WebKit
Najnowsza aktualizacja | Wersja stabilna | Kandydat do wydania | Wersja Beta | Wydanie alfa |
---|---|---|---|---|
4 września 2024 r. | 1.9.0 | 1.12.0-rc01 | - | - |
Deklarowanie zależności
Aby dodać zależność w Webkit, musisz dodać repozytorium Google Maven do swojego w projektach AI. Zapoznaj się z repozytorium Google Maven. .
Dodaj zależności artefaktów, których potrzebujesz w pliku build.gradle
aplikacji lub modułu:
Odlotowe
dependencies { implementation "androidx.webkit:webkit:1.9.0" }
Kotlin
dependencies { implementation("androidx.webkit:webkit:1.9.0") }
Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.
Opinia
Twoja opinia pomoże nam ulepszyć Jetpack. Daj nam znać, jeśli odkryjesz nowe problemy jak ulepszyć tę bibliotekę. Przyjrzyj się istniejące problemy w tej bibliotece, zanim utworzysz nową. Możesz zagłosować nad istniejącym problemem przez klikając przycisk gwiazdki.
Zobacz dokumentację narzędzia Issue Tracker. .
Wersja 1.12
Wersja 1.12.0-rc01
4 września 2024 r.
Usługa androidx.webkit:webkit:1.12.0-rc01
została zwolniona. Ta wersja nie zawiera żadnych zmian w porównaniu z wersją 1.12.0-beta01
.
Wersja 1.12.0-beta01
21 sierpnia 2024 r.
Usługa androidx.webkit:webkit:1.12.0-beta01
została zwolniona. Wersja 1.12.0-beta01 zawiera te zatwierdzenia.
Poprawki błędów
- Usunęliśmy ręczne dodawanie informacji o dostępie do nowych interfejsów API platformy, ponieważ dzieje się to automatycznie przez modelowanie API w przypadku korzystania z R8 z pakietem AGP w wersji 7.3 lub nowszej (np. R8 w wersji 3.3) oraz wszystkich kompilacji z pakietem AGP 8.1 lub nowszym (np. D8 w wersji 8.1). Klientom, którzy nie korzystają z pakietu AGP, zalecamy zaktualizowanie go do wersji D8 w wersji 8.1 lub nowszej. Więcej szczegółów znajdziesz w tym artykule. (Ia60e0, b/345472586)
Wersja 1.12.0-alfa02
12 czerwca 2024 r.
Usługa androidx.webkit:webkit:1.12.0-alpha02
została zwolniona. Wersja 1.12.0-alfa02 zawiera te zatwierdzenia.
Nowe funkcje
- Aby włączyć lub wyłączyć
BackForwardCache
, dodaj doWebSettingsCompat
nowy interfejs API. Ten interfejs API jest w wersji eksperymentalnej i można go w przyszłości zmienić. (I64a38) - Dodaj do
WebSettingsCompat
nowy interfejs API, aby kontrolować ładowanie spekulacyjne tych ustawień WebSettings. Na razie dostępne jest tylko wstępne renderowanie. Ten interfejs API jest w wersji eksperymentalnej i można go w przyszłości zmienić. (I13962)
Zmiany interfejsu API
- Niektóre metody zostały teraz udokumentowane za pomocą atrybutu
@UiThread
(w stosownych przypadkach). (I6c7e0), (I44541) - Metody zapewniające bezpieczeństwo wątków zostały omówione w dokumencie
@AnyThread
. (I70189) - Zwiększam
minSdkVersion
z 19 do 21. (Id7a43).
Wersja 1.12.0-alpha01
17 kwietnia 2024 r.
Usługa androidx.webkit:webkit:1.12.0-alpha01
została zwolniona. Wersja 1.12.0-alfa01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Dodaliśmy nowy interfejs API, aby włączyć uwierzytelnianie w internecie w języku:
WebView. Developers
, i umożliwić włączenie lub wyłączenie wywołańWebAuthn
wWebView
dla aplikacji korzystających zWebSettingsCompat#setWebAuthenticationSupport
. (I8187F)
Wersja 1.11
Wersja 1.11.0
1 maja 2024 r.
Usługa androidx.webkit:webkit:1.11.0
została zwolniona. Wersja 1.11.0 zawiera te zatwierdzenia.
Ważne zmiany wprowadzone od wersji 1.10.0
- Zezwalaj aplikacjom na sterowanie odtwarzaniem dźwięku w
WebView
za pomocą nowych interfejsów APIsetAudioMuted
iisAudioMuted
, które działają analogicznie do wyciszania karty w Chrome. - Wprowadzenie funkcji
URLUtilCompat
, która obsługuje analizę nagłówkówContent-Disposition
korzystających z atrybutu wartości zakodowanejfilename*
zgodnie z definicją podaną w RFC 6266. Interfejs API zgodności bezpośrednio udostępnia też metodę analizowania nagłówkaContent-Disposition
, w której sugerowana nazwa pliku na podstawie adresu URL i typu MIME nie jest potrzebna.
Wersja 1.11.0-rc01
3 kwietnia 2024 r.
Usługa androidx.webkit:webkit:1.11.0-rc01
została zwolniona. Ta wersja nie zawiera żadnych zmian w porównaniu z wersją 1.11.0-beta01
.
Wersja 1.11.0-beta01
20 marca 2024 r.
Wersja androidx.webkit:webkit:1.11.0-beta01
została wydana bez istotnych zmian. Wersja 1.11.0-beta01 zawiera te zatwierdzenia.
Wersja 1.11.0-alfa02
21 lutego 2024 r.
Usługa androidx.webkit:webkit:1.11.0-alpha02
została zwolniona. Wersja 1.11.0-alfa02 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaj metody
setAudioMuted
iisAudioMuted
do wyciszania (i wyłączania) wyciszeniaWebViews
. Ta metoda pozwoli Ci uniemożliwić odtwarzanie dźwięku z urządzeniaWebView
. (IE7a33)
Zmiany interfejsu API
- Pole
URLUtilCompat
jest ostateczne, ponieważ nie powinno być podklasyfikowane. (I49ec1).
Wersja 1.11.0-alpha01
7 lutego 2024 r.
Usługa androidx.webkit:webkit:1.11.0-alpha01
została zwolniona. Wersja 1.11.0-alfa01 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaj zgodność aplikacji
URLUtil.guessFileName
. Wersja zgodności wURLUtilCompat
obsługuje analizowanie nagłówkówContent-Disposition
korzystających z atrybutu wartości zakodowanejfilename*
zgodnie z definicją podaną w RFC 6266. Interfejs API zgodności bezpośrednio udostępnia też metodę analizowania nagłówkaContent-Disposition
, w której sugerowana nazwa pliku na podstawie adresu URL i typu MIME nie jest potrzebna. (If6ae7, b/309927164)
Wersja 1.10
Wersja 1.10.0
24 stycznia 2024 r.
Usługa androidx.webkit:webkit:1.10.0
została zwolniona. Wersja 1.10.0 zawiera te zatwierdzenia.
Ważne zmiany wprowadzone od wersji 1.9.0
- W interfejsie WebSettingsCompat dodaliśmy nowy interfejs API, aby kontrolować eksperymentalne działanie interfejsu Android WebView Media Integrity API przez całkowite wyłączenie interfejsu API lub ograniczenie udostępniania tożsamości aplikacji w odpowiedzi interfejsu API. To ustawienie można przełączać dla wszystkich źródeł i dla każdego źródła.
Wersja 1.10.0-rc01
10 stycznia 2024 r.
Usługa androidx.webkit:webkit:1.10.0-rc01
została zwolniona. Ta wersja nie zawiera żadnych zmian w porównaniu z wersją 1.10.0-beta01
.
Wersja 1.10.0-beta01
13 grudnia 2023 r.
Usługa androidx.webkit:webkit:1.10.0-beta01
została zwolniona. Wersja 1.10.0-beta01 zawiera te zatwierdzenia.
- Brak zmian funkcjonalnych od wersji
1.10.0-alpha01
.
Wersja 1.10.0-alpha01
29 listopada 2023 r.
Usługa androidx.webkit:webkit:1.10.0-alpha01
została zwolniona. Wersja 1.10.0-alfa01 zawiera te zatwierdzenia.
Nowe funkcje
- Do
WebSettingsCompat
dodaliśmy nowy interfejs API, aby kontrolować eksperymentalne zachowanie interfejsu Android WebView Media Integrity API przez całkowite wyłączenie interfejsu API lub ograniczenie udostępniania tożsamości aplikacji w odpowiedzi interfejsu API. To ustawienie można przełączać dla wszystkich źródeł i dla każdego źródła.
Wersja 1.9
Wersja 1.9.0
29 listopada 2023 r.
Usługa androidx.webkit:webkit:1.9.0
została zwolniona. Wersja 1.9.0 zawiera te zatwierdzenia.
Ważne zmiany wprowadzone od wersji 1.8.0
- Dodano nowy wieloprofilowy interfejs API dla WebViews.
- Interfejs Profile ma różne interfejsy API, które umożliwiają pobieranie powiązanych danych z tym profilem, takie jak nazwa, GeoLocationPermissions, ServiceWorkerController, CookieManager i WebStorage. Te obiekty są powiązane z profilem, a informacje nie są udostępniane między różnymi profilami w aplikacji.
- Profil używany przez instancję
WebView
można zmienić za pomocą metody WebViewCompat#setProfile i pobrać za pomocą metody WebViewCompat#getProfile - Nowy ProfileStore umożliwia zarządzanie profilami dostępnymi w aplikacji, w tym profilami domyślnymi.
- Istniejące interfejsy API WebView, takie jak CookieManager#getInstance, będą nadal działać w profilu domyślnym.
- Dodano interfejs API do wstrzykiwania i uruchamiania JavaScriptu przed wczytaniem strony.
- Interfejs API WebViewCompat#addDocumentStartJavascript umożliwia aplikacjom wstrzykiwanie skryptów w obiekcie
WebView
, które są uruchamiane przed wykonaniem jakichkolwiek skryptów na stronie. Interfejs API pozwala aplikacji określić docelową listę źródeł, dla których skrypt ma zostać włączony, dzięki czemu będzie on działał tylko na odpowiednich stronach. W odróżnieniu od WebView#optionJavascript ten interfejs API umożliwia wykonywanie skryptów w umieszczonych elementach iframe podczas ich wczytywania. Aplikacje mogą używać tego nowego interfejsu API w połączeniu z funkcją WebViewCompat#addWebMessageListener, aby w niezawodny sposób skonfigurować dwukierunkową komunikację z JavaScriptem na stronie.
- Interfejs API WebViewCompat#addDocumentStartJavascript umożliwia aplikacjom wstrzykiwanie skryptów w obiekcie
- Dodano interfejsy API, które modyfikują sposób rejestrowania zdarzeń atrybucji w Piaskownicy prywatności.
- Wprowadziliśmy nowy interfejs API WebSettingsCompat#setAttributionRegistrationBehavior, który umożliwia deweloperom określenie, czy źródła i reguły atrybucji mają być rejestrowane w komponencie WebView jako pochodzące z samej aplikacji czy pochodzące z treści internetowych. Tej metody można też używać do wyłączania raportowania atrybucji w komponencie WebView. Ponadto dodaliśmy nowy interfejs API
WebSettingsCompat#getAttributionRegistrationBehavior
, aby umożliwić korzystanie z bieżącego działania. - Więcej informacji znajdziesz w dokumentacji Piaskownicy prywatności.
- Wprowadziliśmy nowy interfejs API WebSettingsCompat#setAttributionRegistrationBehavior, który umożliwia deweloperom określenie, czy źródła i reguły atrybucji mają być rejestrowane w komponencie WebView jako pochodzące z samej aplikacji czy pochodzące z treści internetowych. Tej metody można też używać do wyłączania raportowania atrybucji w komponencie WebView. Ponadto dodaliśmy nowy interfejs API
- Dodano interfejsy API do zastępowania metadanych klienta użytkownika na potrzeby wskazówek dotyczących klienta.
- Wprowadziliśmy nowy interfejs API WebSettingsCompat#setUserAgentMetadata, który zastępuje metadane klienta użytkownika w komponencie WebView służącym do wypełniania wskazówek dotyczących klienta użytkownika. Dodaliśmy też kolejny nowy interfejs API WebSettingsCompat#getUserAgentMetadata, który ma pobierać aktualne zastąpienia klienta użytkownika. Zachęcamy aplikacje, aby używały nowego interfejsu API do ustawiania odpowiednich wartości zastąpień za każdym razem, gdy aplikacja zmieni domyślny ciąg znaków klienta użytkownika za pomocą WebSettings.setUserAgentString, aby mieć pewność, że w każdej sytuacji są używane prawidłowe wartości.
Wersja 1.9.0-rc01
15 listopada 2023 r.
Usługa androidx.webkit:webkit:1.9.0-rc01
została zwolniona. Ta wersja nie zawiera żadnych zmian w porównaniu z wersją 1.9.0-beta01
.
Wersja 1.9.0-beta01
1 listopada 2023 roku
Usługa androidx.webkit:webkit:1.9.0-beta01
została zwolniona. Wersja 1.9.0-beta01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Rozwiąż problem z dopuszczaniem wartości null interfejsu API metadanych klienta użytkownika. Aktualizujemy klasę
BrandVersion
, aby używała wzorca konstruktora i utrzymywała spójność pobierania i metody ustawiającej klasyUserAgentMetadata
. (Ibf195). - Dodaje adnotacje
ProfileStore
,WebViewCompat#setProfile
iWebViewCompat.getProfile
z:@UiThread
. (I499b2)
Wersja 1.9.0-alpha01
18 października 2023 r.
Usługa androidx.webkit:webkit:1.9.0-alpha01
została zwolniona. Wersja 1.9.0-alfa01 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaliśmy wieloprofilowy interfejs API, który umożliwia rozróżnienie sesji przeglądania w
WebViews
.Każdy profil ma własne dane (np. pliki cookie). Możesz tworzyć profile, przypisywać je doWebView
instancji i pobierać je później, jeśli potrzebujesz dostępu do danych. Istnieje pojedyncza klasaProfileStore
, która ułatwia zarządzanie profilami przez ich tworzenie lub usuwanie za pomocą interfejsów API.getOrCreateProfile
,getProfile
,getAllProfileNames
ideleteProfile
. KlasaProfile
będzie miała różne interfejsy API do pobierania danych powiązanych z tym profilem, np. jego nazwyGeoLocationPermissions
,ServiceWorkerController
,CookieManager
iWebStorage
. Każdy interfejsWebView
będzie domyślnie uruchomiony z profilem domyślnym, ale możesz to zmienić za pomocą opcjiWebViewCompat#setProfile
. W związku z tym profil użytkownikaWebView
można pobrać za pomocą narzędziaWebViewCompat#getProfile
. (I32d22) - Dodaj interfejsy API, aby zmienić sposób rejestrowania zdarzeń Attribution Reporting. Wprowadziliśmy nowy interfejs API
WebSettingsCompat#setAttributionRegistrationBehavior
, który umożliwia deweloperom określenie, czy źródła i reguły mają być rejestrowane jako pochodzące z samej aplikacji czy pochodzące z treści internetowej wWebView
. Tej metody można też użyć do wyłączenia raportów atrybucji na koncieWebView
. Ponadto dodaliśmy nowy interfejs APIWebSettingsCompat#getAttributionRegistrationBehavior
, aby umożliwić korzystanie z bieżącego działania. Więcej informacji znajdziesz w dokumentacji Piaskownicy prywatności. (I661f2) - Dodaj interfejsy API, aby zastąpić metadane klienta użytkownika. Wprowadziliśmy nowy interfejs API
WebSettingsCompat#setUserAgentMetadata
, który zastępuje metadane klienta użytkownika w komponencie WebView, który służy do wypełniania wskazówek dotyczących klienta użytkownika. Dodaliśmy też kolejny nowy interfejs APIWebSettingsCompat#getUserAgentMetadata
, który ma pobierać aktualne zastąpienia klienta użytkownika. Zachęcamy aplikacje, aby używały nowego interfejsu API do ustawiania odpowiednich wartości zastępowania, zamiast polegać na zmianie klienta użytkownika. (I74500) - Dodaj interfejs API, aby wstrzykiwać kod JavaScript, który ma być uruchamiany podczas wczytywania strony. Interfejs API
WebViewCompat.addDocumentStartJavascript
umożliwia aplikacjom wstrzykiwanie skryptów do komponentu WebView, który będzie uruchamiany przed wykonaniem jakichkolwiek skryptów na stronie. Interfejs API pozwala aplikacji określić docelową listę źródeł, dla których skrypt ma zostać włączony, dzięki czemu będzie on działał tylko na odpowiednich stronach. W przeciwieństwie do interfejsuWebView.evaluateJavascript
ten interfejs API pozwala na wykonywanie skryptów w umieszczonych elementach iframe podczas ich wczytywania. (Ide063).
Wersja 1.8
Wersja 1.8.0
6 września 2023 r.
Usługa androidx.webkit:webkit:1.8.0
została zwolniona. Wersja 1.8.0 zawiera te zatwierdzenia.
Ważne zmiany wprowadzone od wersji 1.7.0
- Dodaj obsługę przekazywania
ArrayBuffer
w parametrachWebMessagePortCompat#postMessage
,JavaScriptReplyProxy#postMessage
iWebViewCompat#postWebMessage
, odbieraniaArrayBuffer
z JavaScriptu ponadWebMessagePortCompat
iWebMessageListener
oraz odbierania możliwych do przeniesieniaArrayBuffer
z JavaScriptu ponadWebMessagePortCompat
. (Aosp/2596550, b/251152171)
Wersja 1.8.0-rc01
9 sierpnia 2023 r.
Usługa androidx.webkit:webkit:1.8.0-rc01
została udostępniona bez zmian od 1.8.0-beta01
. Wersja 1.8.0-rc01 zawiera te zatwierdzenia.
Wersja 1.8.0-beta01
26 lipca 2023 r.
Usługa androidx.webkit:webkit:1.8.0-beta01
została udostępniona bez zmian od 1.8.0-alpha01
. Wersja 1.8.0-beta01 zawiera te zatwierdzenia.
Wersja 1.8.0-alpha01
7 czerwca 2023 r.
Usługa androidx.webkit:webkit:1.8.0-alpha01
została zwolniona. Wersja 1.8.0-alfa01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Zobacz sekcję Twój wkład zewnętrzny.
Treści tłumaczone przez użytkowników zewnętrznych
- Dodaj obsługę przekazywania
ArrayBuffer
w polachWebMessagePortCompat#postMessage
,JsReplyProxy#postMessage
iWebViewCompat#postWebMessage
, odbieraniaArrayBuffer
z JavaScriptu przezWebMessagePortCompat
iWebMessageListener
oraz odbierania możliwych do przeniesieniaArrayBuffer
z JavaScriptu przezWebMessagePortCompat
. Ten interfejs API będzie dostępny tylko odWebView
w wersji 116. (IE7567, b/251152171)
Wersja 1.7
Wersja 1.7.0
24 maja 2023 r.
Usługa androidx.webkit:webkit:1.7.0
została zwolniona. Wersja 1.7.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.6.0
- Dodaliśmy obsługę przeciągania obrazów w wersji
WebView
. Aby umożliwić użytkownikom przeciąganie obrazów zWebView
, dodaj nową wersjęDropDataContentProvider
do pliku manifestu aplikacji w sposób opisany w dokumentacji zajęć. - Dodaliśmy interfejs API
ProcessGlobalConfig#setDirectoryBasePaths(Context,File,File)
, którego można używać do ustawiania katalogów podstawowych, którychWebView
będzie używać w bieżącym procesie. Tak jak w przypadku wszystkich metod wProcessGlobalConfig
, ta metoda musi zostać wywołana przed utworzeniem pierwszego wystąpieniaWebView
. Dodaliśmy tę metodę, aby zapewnić platformie Androida możliwość dostosowywania ustawieńWebView
. Ta metoda nie jest zalecana do zastosowań ogólnych.
Wersja 1.7.0-rc01
10 maja 2023 r.
Usługa androidx.webkit:webkit:1.7.0-rc01
została udostępniona bez zmian od 1.7.0-beta01
. Wersja 1.7.0-rc01 zawiera te zatwierdzenia.
Wersja 1.7.0-beta01
5 kwietnia 2023 r.
Usługa androidx.webkit:webkit:1.7.0-beta01
została zwolniona. Wersja 1.7.0-beta01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Mała zmiana w flagi funkcji i nazwie metody oraz sprawiła, że
setDirectoryBasePaths()
akceptuje plik zamiast ciągu znaków (Ib0d0a)
Wersja 1.7.0-alpha03
8 marca 2023 r.
Usługa androidx.webkit:webkit:1.7.0-alpha03
została zwolniona. Wersja 1.7.0-alfa03 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Dodaj interfejs API
ProcessGlobalConfig#setDirectoryBasePath(String, String)
, którego można użyć do ustawienia katalogów podstawowych, którychWebView
będzie używać w bieżącym procesie. (Ibd1a1, b/250553687)
Poprawki błędów
- Popraw nieprawidłową regułę
ProGuard
, która powoduje błędy kompilacji podczas korzystania z narzędziaDexGuard
(Ia65c2, b/270034835)
Wersja 1.7.0-alpha02
8 lutego 2023 r.
Usługa androidx.webkit:webkit:1.7.0-alpha02
została zwolniona. Wersja 1.7.0-alfa02 zawiera te zatwierdzenia.
Poprawki błędów
- Błędy w dokumentacji aplikacji
DropDataContentProvider
.
Wersja 1.7.0-alpha01
25 stycznia 2023 r.
Usługa androidx.webkit:webkit:1.7.0-alpha01
została zwolniona. Wersja 1.7.0-alfa01 zawiera te zatwierdzenia.
Nowe funkcje
- Dodajemy obsługę przeciągania obrazów w usłudze
WebView
. Aby umożliwić użytkownikom przeciąganie obrazów zWebView
, dodaj nową wartośćDropDataContentProvider
do pliku manifestu aplikacji. (05a1a6)
Wersja 1.6
Wersja 1.6.1
22 marca 2023 r.
Usługa androidx.webkit:webkit:1.6.1
została zwolniona. Wersja 1.6.1 zawiera te zatwierdzenia.
Poprawki błędów
- Naprawianie błędu analizy ProGuard (Ia65c2)
Wersja 1.6.0
25 stycznia 2023 r.
Usługa androidx.webkit:webkit:1.6.0
została zwolniona. Wersja 1.6.0 zawiera te zatwierdzenia.
Ważne zmiany wprowadzone od wersji 1.5.0
- Dodaliśmy nowy interfejs API ProcessGlobalConfig, dzięki któremu aplikacje mogą określać ustawienia konfiguracyjne, które należy skonfigurować przed wczytaniem WebView, np. sufiksu katalogu danych WebView. Konfigurację należy skonfigurować i zastosować jak najwcześniej podczas uruchamiania aplikacji, aby mieć pewność, że nastąpi to, zanim inny wątek będzie mógł wywołać metodę, która wczytuje do procesu
WebView
. - Dodano nowy interfejs API CookieManagerCompat w celu rozwinięcia android.webkit.CookieManager za pomocą nowej metody
getCookieInfo
, która pobiera wszystkie atrybuty wszystkich plików cookie ustawionych pod określonym adresem URL. Różni się to od obecnego interfejsu API getCookie wCookieManager
, który zwraca tylko nazwy i atrybuty wartości plików cookie. - Usługa
WebSettingsCompat
udostępnia nowe metody włączania/wyłączania działania funkcjiEnterpriseAuthenticationAppLinkPolicy
skonfigurowane przez administratora wWebView
oraz uzyskiwania bieżącego ustawienia. Dzięki tej funkcji komponent WebView może otwierać aplikację uwierzytelniania zamiast adresu URL uwierzytelniania. Ta funkcja nie ma wpływu na urządzenia, które nie są zarządzane przez zasady przedsiębiorstwa. - Dodanie nowego interfejsu API do źródła danych
WebSettingsCompat
, aby umożliwić aplikacjom jawne wysyłanie nazwy pakietu aplikacji w nagłówkuX-Requested-With
do źródeł znajdujących się na liście dozwolonych. Nagłówek był tradycyjnie wysyłany w przypadku każdego żądania zWebView
.
Wersja 1.6.0-rc01
11 stycznia 2023 r.
Usługa androidx.webkit:webkit:1.6.0-rc01
została zwolniona. Wersja 1.6.0-rc01 zawiera te zatwierdzenia.
Poprawki błędów
- Usunięto
NullPointerException
wWebViewFeature.isStartupFeatureSupported(Context, String)
w przypadku działania z pakietem SDK < L. (IC7292)
Wersja 1.6.0-beta01
7 grudnia 2022 r.
Usługa androidx.webkit:webkit:1.6.0-beta01
została zwolniona. Wersja 1.6.0-beta01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Metoda
ProcessGlobalConfig
została zmieniona, tak aby korzystała ze zwykłego konstruktora i statycznej metody stosowania. Metodę apply należy wywołać tylko raz na proces (jak najwcześniej), a jeśli zostanie wywołana więcej niż raz, wywołaIllegalStateException
. ObiektyProcessGlobalConfig
nie mają już żadnych ograniczeń dotyczących liczby wywołań funkcji ustawiających. (I456c3)
Wersja 1.6.0-alpha03
9 listopada 2022 r.
Usługa androidx.webkit:webkit:1.6.0-alpha03
została zwolniona. Wersja 1.6.0-alfa03 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaj klasę
ProcessGlobalConfig
, która umożliwia użytkownikom ustawianie globalnej konfiguracji procesu przed wczytaniemWebView
.WebView
zawiera globalne parametry konfiguracji procesu, których nie można zmienić po załadowaniu obiektuWebView
(np. katalogu danychWebView
). Ta klasa umożliwia aplikacjom ustawianie tych parametrów. Konfigurację należy skonfigurować i zastosować jak najwcześniej podczas uruchamiania aplikacji, aby mieć pewność, że nastąpi to, zanim inny wątek będzie mógł wywołać metodę, która wczytuje do procesuWebView
. (I7c0e0, b/250553687) - Dodanie nowego interfejsu API, aby umożliwić aplikacjom jawne wysyłanie nazwy pakietu aplikacji w nagłówku X-Request-With do źródeł znajdujących się na liście dozwolonych. Nagłówek był tradycyjnie wysyłany w przypadku każdego żądania z
WebView
. (I0adfe, b/226552535)
Zmiany interfejsu API
- Interfejs
WebSettingsCompat#setAlgorithmicDarkeningAllowed
API jest obsługiwany na wszystkich wersjach Androida wWebView
w wersji 105 i nowszych. Poprzednie wersjeWebView
obsługiwały interfejs API tylko na Androidzie Q i nowszych. W związku z tym ten interfejs API nie jest już oznaczony jako@RequiresApi(Build.VERSION_CODES.Q)
. (I3ac1d),
Wersja 1.6.0-alpha02
24 października 2022 r.
Usługa androidx.webkit:webkit:1.6.0-alpha02
została zwolniona. Wersja 1.6.0-alfa02 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaje nową klasę
CookieManagerCompat
wraz z interfejsem APIgetCookieInfo
, który pobiera wszystkie atrybuty wszystkich plików cookie ustawionych pod określonym adresem URL. Różni się to od obecnego interfejsu APIgetCookie
wCookieManager
, który zwraca tylko nazwy i atrybuty wartości plików cookie. (I07365, b/242161756)
Wersja 1.6.0-alpha01
24 sierpnia 2022 r.
Usługa androidx.webkit:webkit:1.6.0-alpha01
została zwolniona. Wersja 1.6.0-alfa01 zawiera te zatwierdzenia.
Nowe funkcje
- Dodano interfejsy API w
WebSettingsCompat
, aby włączyć lub wyłączyć efekt działaniaEnterpriseAuthenticationAppLinkPolicy
, jeśli został ustawiony przez administratora w domenieWebView
. Dzięki tej funkcjiWebView
może otwierać aplikację do uwierzytelniania zamiast adresu URL uwierzytelniania. Ta funkcja nie ma wpływu na urządzenia, które nie są zarządzane przez zasady przedsiębiorstwa.
Wersja 1.5.0
Wersja 1.5.0
24 sierpnia 2022 r.
Usługa androidx.webkit:webkit:1.5.0
została zwolniona. Wersja 1.5.0 zawiera te zatwierdzenia.
Ważne zmiany wprowadzone od wersji 1.4.0
- Nowy interfejs API
setAlgorithmicDarkeningAllowed
w domenieWebSettingsCompat
zastępuje stare interfejsy APIsetForceDark
isetForceDarkStrategy
. Aplikacje kierowane na pakiet SDK 33 i nowsze (T) powinny korzystać z nowego interfejsu API, ponieważ stary interfejs API nie będzie już do nich stosowany. - Listę dozwolonych adresów URL, które mogą używać skonfigurowanego serwera proxy, można teraz ustawić za pomocą
ProxyCofig.Builder
przez ustawieniesetReverseBypassEnabled
natrue
. W takim przypadku wszystkie pozostałe adresy URL będą pomijać skonfigurowany serwer proxy.
Wersja 1.5.0-rc01
10 sierpnia 2022 r.
Usługa androidx.webkit:webkit:1.5.0-rc01
została udostępniona bez zmian od 1.5.0-beta01
. Wersja 1.5.0-rc01 zawiera te zatwierdzenia.
Wersja 1.5.0-beta01
29 czerwca 2022 r.
Usługa androidx.webkit:webkit:1.5.0-beta01
została zwolniona. Wersja 1.5.0-beta01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Interfejsy API związane z wyciemnianiem alogrytmicznym są teraz oznaczone adnotacjami, aby wymagać poziomu Q API. Interfejs API nie będzie miał żadnego wpływu na poziomy API < P: Ciemny motyw nie jest dostępny na tych urządzeniach. (I0905e)
Wersja 1.5.0-alpha01
18 maja 2022 r.
Usługa androidx.webkit:webkit:1.5.0-alpha01
została zwolniona. Wersja 1.5.0-alfa01 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaj nową metodę
getVariationsHeader()
w witrynieWebViewCompat
, aby pobrać wartość nagłówka X-Client-Data wysyłana przezWebView
. Zwracana wartość to protobuf ClientINSTANCEs zakodowany w standardzie base64. - Dodaj interfejsy API w
WebSettingsCompat
, aby zezwolić na przyciemnianie algorytmicznie lub je zablokować w przypadku aplikacji z wartością targetSdk >= 33. (I29597)
Zmiany interfejsu API
- Dodaj nową metodę w
ProxyCofig.Builder
, aby ustawić odwrotne omijanie zabezpieczeń. Jeśli zasada odwrotnego pomijania ma wartość Prawda, z ustawień serwera proxy będą używane tylko adresy URL z listy pomijania. (I9eaa2, b/168728599)
Poprawki błędów
- Poprawiliśmy literówkę w dokumentacji ciemnego motywu. (I36ebf, b/194343633)
- Naprawiono błąd, który powodował, że metody
WebViewAssetLoader.Builder
były nieumyślnie zależne od zamówienia. (If420d, b/182196765)
Wersja 1.4.0
Wersja 1.4.0
16 grudnia 2020 roku
Usługa androidx.webkit:webkit:1.4.0
została zwolniona. Wersja 1.4.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.3.0
- Dodano nowy interfejs API
setSafeBrowsingAllowlist()
, który zastąpiłsetSafeBrowsingWhitelist()
. Dzięki temu aplikacje mogą zaktualizować kod, aby uniknąć niestosownej terminologii, a jednocześnie nadal obsługiwać ten sam zakres pakietów Android SDK i komponentów WebView co wycofany interfejs API. - Naprawiliśmy błąd funkcji setProxyOverride, który powodował nieprawidłowe stosowanie reguł zastępczych.
Wersja 1.4.0-rc02
Grudzień 2, 2020
Usługa androidx.webkit:webkit:1.4.0-rc02
została zwolniona. Wersja 1.4.0-rc02 zawiera te zatwierdzenia.
Poprawki błędów
- Naprawia nieprawidłowe stosowanie reguł kreacji zastępczych podczas korzystania z funkcji setProxyOverride.
Wersja 1.4.0-rc01
11 listopada 2020 roku
Usługa androidx.webkit:webkit:1.4.0-rc01
została udostępniona bez zmian od 1.4.0-beta01
. Wersja 1.4.0-rc01 zawiera te zatwierdzenia.
Wersja 1.4.0-beta01
14 października 2020 r.
Usługa androidx.webkit:webkit:1.4.0-beta01
została udostępniona bez zmian od 1.4.0-alpha01
. Wersja 1.4.0-beta01 zawiera te zatwierdzenia.
Wersja 1.4.0-alpha01
16 września 2020 roku
Usługa androidx.webkit:webkit:1.4.0-alpha01
została zwolniona. Wersja 1.4.0-alfa01 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Dodano nowy interfejs API
WebViewCompat#setSafeBrowsingAllowlist()
do zastąpsetSafeBrowsingWhitelist()
. Dzięki temu aplikacje mogą zaktualizować kod do unikanie terminologii, która nie jest inkluzywna, a jednocześnie obsługuje ten sam zakres. pakietów SDK na Androida i komponentów WebView jako wycofany interfejs API. (I8d65d)
Wersja 1.3.0
Wersja 1.3.0
19 sierpnia 2020 r.
Usługa androidx.webkit:webkit:1.3.0
została zwolniona. Wersja 1.3.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.2.0
- Interfejs ForceDarkStrategy API zapewnia większą kontrolę nad przyciemnianiem komponentu WebView (ciemnienie CSS/treści internetowej w porównaniu z automatycznym przyciemnianiem).
- WebMessageListener i powiązane z nim interfejsy API zapewniają prosty i bezpieczny mechanizm nawiązywania komunikacji między treściami internetowymi a aplikacją osadzoną WebView.
isMultiProcessEnabled
API, aby sprawdzić, czy komponent WebView działa w ramach wielu procesów. Jest to możliwe na Androidzie O i oznacza, że treści z internetu są renderowane w mechanizmie renderowania działającym w trybie piaskownicy, który jest oddzielnym procesem aplikacji. Ten mechanizm renderowania działający w piaskownicy może być udostępniany innym komponentom WebView w tej samej aplikacji, ale nie jest udostępniany innym procesom aplikacji.
Wersja 1.3.0-rc02
5 sierpnia 2020 r.
Usługa androidx.webkit:webkit:1.3.0-rc02
została zwolniona. Wersja 1.3.0-rc02 zawiera te zatwierdzenia.
Poprawki błędów
- Rozwiązano problem ze zgodnością, który powodował awarię
WebMessageListener
podczas programowania lokalnego, jeśli aplikacja została uruchomiona za pomocą funkcji błyskawicznego uruchamiania w Android Studio.
Wersja 1.3.0-rc01
24 czerwca 2020 r.
Usługa androidx.webkit:webkit:1.3.0-rc01
została udostępniona bez zmian od 1.3.0-beta01
. Wersja 1.3.0-rc01 zawiera te zatwierdzenia.
Wersja 1.3.0-beta01
10 czerwca 2020 r.
Usługa androidx.webkit:webkit:1.3.0-beta01
została zwolniona. Wersja 1.3.0-beta01 zawiera te zatwierdzenia.
Nowe funkcje
- Interfejs API
ForceDarkStrategy
do kontrolowania przyciemniania komponentu WebView (ciemnienie CSS/treści internetowej w porównaniu z automatycznym przyciemnianiem). - Interfejsy API
WebMessageListener
zapewniają prosty i bezpieczny mechanizm nawiązywania komunikacji między treściami z internetu a osadzoną aplikacją WebView. MultiProcessEnabled
API do sprawdzania, czy WebView działa w trybie wieloprocesowym.
Wersja 1.3.0-alfa03
27 maja 2020 r.
Usługa androidx.webkit:webkit:1.3.0-alpha03
została zwolniona. Wersja 1.3.0-alfa03 zawiera te zatwierdzenia.
Zmiany interfejsu API
- Metoda
addWebMessageListener
otrzymuje terazSet<String>
dozwolonych reguł źródła (wcześniejList<String>
).
Wersja 1.3.0-alfa02
29 kwietnia 2020 roku
Usługa androidx.webkit:webkit:1.3.0-alpha02
została zwolniona. Wersja 1.3.0-alfa02 zawiera te zatwierdzenia.
Nowe funkcje
- Interfejs MultiProcessEnabled API sprawdza, czy WebView działa w trybie wieloprocesowym.
Zmiany interfejsu API
- Wszystkie stałe stałe strategii ciemnej mają teraz prefiks
DARK_STRATEGY
.
Wersja 1.3.0-alpha01
15 kwietnia 2020 roku
Usługa androidx.webkit:webkit:1.3.0-alpha01
została zwolniona. Wersja 1.3.0-alfa01 zawiera te zatwierdzenia.
Nowe funkcje
- Interfejs API
ForceDarkStrategy
do kontrolowania przyciemnianiaWebView
(ciemnienie CSS/treści internetowej w porównaniu z automatycznym przyciemnianiem). - Interfejsy API
WebMessageListener
zapewniają prosty i bezpieczny mechanizm nawiązywania komunikacji między treściami z internetu a osadzoną aplikacją WebView.
Wersja 1.2.0
Wersja 1.2.0
Marzec 4, 2020
Usługa androidx.webkit:webkit:1.2.0
została zwolniona. Wersja 1.2.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.1.0
- Dodaliśmy interfejs ForceDark API, aby kontrolować, czy komponenty WebView mają być renderowane w trybie ciemnym.
Wersja 1.2.0-rc01
19 lutego 2020 r.
Usługa androidx.webkit:webkit:1.2.0-rc01
została udostępniona bez zmian od 1.2.0-beta01
. Wersja 1.2.0-rc01 zawiera te zatwierdzenia.
Wersja 1.2.0-beta01
5 lutego 2020 r.
Usługa androidx.webkit:webkit:1.2.0-beta01
została udostępniona bez zmian od 1.2.0-alpha01
. Wersja 1.2.0-beta01 zawiera te zatwierdzenia.
Wersja 1.2.0-alpha01
18 grudnia 2019 r.
Usługa androidx.webkit:webkit:1.2.0-alpha01
została zwolniona. Wersja 1.2.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
- Interfejs ForceDark API do określania, czy komponenty WebView mają być renderowane w trybie ciemnym.
Wersja 1.1.0
Wersja 1.1.0
7 listopada 2019 r.
Usługa androidx.webkit:webkit:1.1.0
została zwolniona. Wersja 1.1.0 zawiera te zatwierdzenia.
Ważne zmiany wprowadzone od wersji 1.0.0
- Interfejsy API Getter API uzupełniające funkcje setWebViewClient() i setWebChromeClient().
- Interfejs ProxyController API do ustawiania serwera proxy żądania sieciowego dla komponentów WebView aplikacji.
- Interfejs WebViewAssetLoader API upraszcza wczytywanie zasobów, zasobów i plików APK z katalogu danych aplikacji przez przechwytywanie żądań. Umożliwia to dostęp do zasobów internetowych i lokalnych bez wyłączania CORS.
- Interfejs trackingController API do zbierania informacji śledzenia WebView na potrzeby debugowania.
- Interfejsy API RenderProcess do zarządzania usługami mechanizmu renderowania WebView i wykrywania przypadków, w których niepoprawnie działająca treść powoduje, że mechanizmy renderowania WebView przestają reagować.
- Zaktualizowaliśmy istniejące interfejsy API, aby uwzględnić w nich adnotacje dotyczące wartości null (
@NonNull
,@Nullable
) i wątków (@UiThread
,@WorkerThread
).
Wersja 1.1.0-rc01
9 października 2019 r.
Usługa androidx.webkit:webkit:1.1.0-rc01
została zwolniona. Wersja 1.1.0-rc01 zawiera te zatwierdzenia.
Poprawki błędów.
- Rozwiązaliśmy problem, który powodował awarię usługi
setWebViewRenderProcessClient()
w przypadku przekazywania pustego klienta.
Wersja 1.1.0-beta01
5 września 2019 r.
Usługa androidx.webkit:webkit:1.1.0-beta01
została zwolniona. Zatwierdzenia zawarte w tej wersji znajdziesz tutaj.
Nowe funkcje
- Nowy
InternalStoragePathHandler
wWebViewAssetLoader
, aby wczytać pliki z katalogu danych aplikacji.
Zmiany interfejsu API
ProxyConfig#getProxyRules()
zwraca teraz listę instancjiProxyRule
, której nie można zmienić. Jest to nowa klasa do przechowywania filtra schematu i odpowiadającego mu adresu URL serwera proxy.
Poprawki błędów.
WebViewAssetLoader
ma domyślnie ustawiony typ „tekst/zwykły” Typ MIME (zamiast wartości null), jeśli nie może odgadnąć typu MIME na podstawie ścieżki pliku.WebViewAssetLoader
nie zgłasza jużNullPointerException
podczas wczytywania plików ze znakami specjalnymi w nazwach ścieżek.
Wersja 1.1.0-alfa02
7 sierpnia 2019 r.
Usługa androidx.webkit:webkit:1.1.0-alpha02
została zwolniona. Zatwierdzenia zawarte w tej wersji znajdziesz tutaj.
Nowe funkcje
WebViewAssetLoader
udostępnia interfejsPathHandler
, aby umożliwić aplikacjom tworzenie niestandardowych funkcji obsługi ścieżek.
Zmiany interfejsu API
WebViewAssetLoader
jest teraz klasą ostateczną, ponieważ nie powinna być podklasą.- Implementacje
WebViewAssetLoader#PathHandler
są teraz publiczne i ostateczne. - Niewielkie zmiany w nazwach metod ProxyConfig.
ProxyController
: dodano nowe metodyaddDirect()
iaddDirect(String)
umożliwiające łączenie się bezpośrednio z serwerami. usunięto ciąg DIRECT.- Zaktualizowaliśmy istniejące interfejsy API, aby uwzględnić w nich adnotacje dotyczące wartości null (
@NonNull
,@Nullable
) i wątków (@UiThread
,@WorkerThread
).
Wersja 1.1.0-alpha01
7 maja 2019 r.
Usługa androidx.webkit:webkit:1.1.0-alpha01
została zwolniona. Zatwierdzenia zawarte w tej wersji znajdziesz tutaj.
Nowe funkcje
- Interfejsy API Getter uzupełniające
setWebViewClient()
isetWebChromeClient()
- Interfejs ProxyController API do ustawiania serwera proxy żądania sieciowego dla komponentów WebView aplikacji.
- Interfejs AssetLoader API upraszcza wczytywanie zasobów i zasobów APK przez przechwytywanie żądań, umożliwiając dostęp do zasobów internetowych bez wyłączania CORS.
- Interfejs trackingController API do zbierania informacji śledzenia WebView na potrzeby debugowania.
- Interfejsy API RenderProcess do zarządzania usługami mechanizmu renderowania WebView i wykrywania przypadków, gdy źle działające treści powodują, że mechanizmy renderowania WebView przestają reagować.
Poprawki błędów.
- Drobne poprawki w formatowaniu dokumentacji istniejących interfejsów API.