Webkit
Najnowsza aktualizacja | Wersja stabilna | Kandydat do publikacji | Wersja Beta | Wersja alfa |
---|---|---|---|---|
12 czerwca 2024 r. | 1,9,0 | - | - | 1.12.0-alfa02 |
Deklarowanie zależności
Aby dodać zależność w Webkit, musisz dodać do projektu repozytorium Google Maven. Więcej informacji znajdziesz w repozytorium Google Maven.
W pliku build.gradle
aplikacji lub modułu dodaj zależności artefaktów, których potrzebujesz:
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 znajdziesz nowe wydania lub masz pomysły na ulepszenie tej biblioteki. Zanim utworzysz nową bibliotekę, przejrzyj problemy z tą biblioteką. Możesz oddać głos w ramach istniejącego problemu, klikając przycisk gwiazdki.
Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.
Wersja 1.12
Wersja 1.12.0-alfa02
12 czerwca 2024 r.
Aplikacja androidx.webkit:webkit:1.12.0-alpha02
została zwolniona. Wersja 1.12.0-alpha02 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaj do interfejsu
WebSettingsCompat
nowy interfejs API, aby włączyć lub wyłączyćBackForwardCache
. Jest to interfejs eksperymentalny i w przyszłości można go zmienić. (I64a38) - Dodaj do interfejsu
WebSettingsCompat
nowy interfejs API, aby kontrolować działanie ładowania spekulacyjnego w tym ustawieniu WebSettings. Obecnie dostępne jest tylko wstępne renderowanie. Jest to interfejs eksperymentalny i w przyszłości można go zmienić. (I13962)
Zmiany w interfejsie API
- W stosownych przypadkach niektóre metody są teraz udokumentowane za pomocą właściwości
@UiThread
. (I6c7e0), (I44541) - Metody bezpieczne w wątkach są teraz dokumentowane w elemencie
@AnyThread
. (I70189) - Zwiększam
minSdkVersion
z 19 do 21. (Id7a43).
Wersja 1.12.0-alfa01
17 kwietnia 2024 r.
Aplikacja androidx.webkit:webkit:1.12.0-alpha01
została zwolniona. Wersja 1.12.0-alpha01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Dodaliśmy nowy interfejs API, który umożliwia włączenie uwierzytelniania internetowego w usłudze
WebView. Developers
i umożliwia włączanie i wyłączanie wywołańWebAuthn
w interfejsieWebView
w aplikacjach korzystających zWebSettingsCompat#setWebAuthenticationSupport
. (I8187f)
Wersja 1.11
Wersja 1.11.0
1 maja 2024 r.
Aplikacja androidx.webkit:webkit:1.11.0
została zwolniona. Wersja 1.11.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.10.0
- Zezwól aplikacjom na sterowanie odtwarzaniem dźwięku w
WebView
za pomocą nowych interfejsów APIsetAudioMuted
iisAudioMuted
, które odpowiadają wyciszaniu karty w Chrome. - Wprowadzono narzędzie
URLUtilCompat
, które obsługuje analizę nagłówkówContent-Disposition
, w których używana jest wartość zakodowanafilename*
zgodnie z definicją podaną w dokumencie RFC 6266. Interfejs zgodności API bezpośrednio udostępnia też metodę analizowania nagłówkaContent-Disposition
, gdy sugerowana nazwa pliku na podstawie adresu URL i typu MIME nie jest potrzebna.
Wersja 1.11.0-rc01
3 kwietnia 2024 r.
Aplikacja 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 opublikowana bez istotnych zmian. Wersja 1.11.0-beta01 zawiera te zatwierdzenia.
Wersja 1.11.0-alfa02
21 lutego 2024 r.
Aplikacja androidx.webkit:webkit:1.11.0-alpha02
została zwolniona. Wersja 1.11.0-alpha02 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaj metody
setAudioMuted
iisAudioMuted
służące do ignorowania (i wyłączania) funkcjiWebViews
. Ta metoda uniemożliwi odtwarzanie dźwięku na urządzeniuWebView
. (Ie7a33)
Zmiany w interfejsie API
- Zadanie
URLUtilCompat
zostało ocenione jako ostateczne, ponieważ nie powinno być podklasyfikacją. (I49ec1).
Wersja 1.11.0-alfa01
7 lutego 2024 r.
Aplikacja androidx.webkit:webkit:1.11.0-alpha01
została zwolniona. Wersja 1.11.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaj zgodność w przypadku elementu
URLUtil.guessFileName
. Wersja zgodności wURLUtilCompat
obsługuje analizę nagłówkówContent-Disposition
, które używają atrybutu wartości zakodowanejfilename*
zgodnie z definicją w RFC 6266. Interfejs zgodności API bezpośrednio udostępnia też metodę analizowania nagłówkaContent-Disposition
, gdy 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.
Aplikacja androidx.webkit:webkit:1.10.0
została zwolniona. Wersja 1.10.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.9.0
- Dodano nowy interfejs API do WebSettingsCompat, aby kontrolować eksperymentalne działanie Android WebView Media Integrity API przez jego całkowite wyłączenie lub ograniczenie udostępniania tożsamości aplikacji w odpowiedzi API. Tę opcję można włączyć w przypadku wszystkich źródeł i poszczególnych źródeł.
Wersja 1.10.0-rc01
10 stycznia 2024 r.
Aplikacja 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.
Aplikacja androidx.webkit:webkit:1.10.0-beta01
została zwolniona. Wersja 1.10.0-beta01 zawiera te zatwierdzenia.
- Brak zmian w funkcjonowaniu od
1.10.0-alpha01
.
Wersja 1.10.0-alfa01
29 listopada 2023 r.
Aplikacja androidx.webkit:webkit:1.10.0-alpha01
została zwolniona. Wersja 1.10.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
- W
WebSettingsCompat
dodano nowy interfejs API, który umożliwia kontrolowanie eksperymentalnego działania Android WebView Media Integrity API przez całkowite wyłączenie tego interfejsu lub ograniczenie udostępniania tożsamości aplikacji w odpowiedzi interfejsu API. Tę opcję można włączyć w przypadku wszystkich źródeł i poszczególnych źródeł.
Wersja 1.9
Wersja 1.9.0
29 listopada 2023 r.
Aplikacja androidx.webkit:webkit:1.9.0
została zwolniona. Wersja 1.9.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.8.0
- Dodano nowy wieloprofilowy interfejs API dla WebView.
- Interfejs Profile ma różne interfejsy API służące do pobierania danych powiązanych z tym profilem – np. nazwa, GeoLocationPermissions, ServiceWorkerController, CookieManager i WebStorage. Te obiekty są przypisane do danego profilu, a informacje nie są udostępniane między różnymi profilami w aplikacji.
- Profil używany przez instancję
WebView
można zmienić przy użyciu metody WebViewCompat#setProfile i pobierać go za pomocą metody WebViewCompat#getProfile. - Niedawno wdrożony ProfileStore umożliwia zarządzanie profilami dostępnymi w aplikacji, w tym profilem domyślnym.
- Istniejące interfejsy API WebView, takie jak CookieManager#getInstance, będą nadal działać na profilu domyślnym.
- Dodano interfejs API do wstrzykiwania i uruchamiania kodu JavaScript przed wczytaniem strony.
- Interfejs API WebViewCompat#addDocumentStartJavascript umożliwia aplikacjom wstrzykiwanie skryptów do interfejsu
WebView
, których działanie jest gwarantowane przed wykonaniem jakichkolwiek skryptów strony. Interfejs API pozwala aplikacji określić docelową listę źródeł, na których skrypt ma zostać włączony. Dzięki temu będzie on działać tylko na zamierzonych stronach. W odróżnieniu od metody WebView#operacja JavaScript ten interfejs API umożliwia wykonywanie skryptów w osadzonych elementach iframe podczas ładowania. Aplikacje mogą używać tego nowego interfejsu API w połączeniu z komunikacją WebViewCompat#addWebMessageListener, aby w niezawodny sposób skonfigurować dwukierunkową komunikację z JavaScriptem na stronie.
- Interfejs API WebViewCompat#addDocumentStartJavascript umożliwia aplikacjom wstrzykiwanie skryptów do interfejsu
- Dodano interfejsy API zmieniające sposób rejestrowania zdarzeń atrybucji w Piaskownicy prywatności.
- Wprowadziliśmy nowy interfejs API WebSettingsCompat#setAttributionRegistrationBehavior, który pozwala deweloperom określać, czy źródła atrybucji i reguły mają być rejestrowane jako pochodzące z samej aplikacji czy z treści internetowych w komponencie WebView. Tej metody można też używać do wyłączania raportów atrybucji w komponencie WebView. Dodatkowo dodaliśmy nowy interfejs API
WebSettingsCompat#getAttributionRegistrationBehavior
, aby uzyskać obecny stan. - Więcej informacji znajdziesz w dokumentacji Piaskownicy prywatności.
- Wprowadziliśmy nowy interfejs API WebSettingsCompat#setAttributionRegistrationBehavior, który pozwala deweloperom określać, czy źródła atrybucji i reguły mają być rejestrowane jako pochodzące z samej aplikacji czy z treści internetowych w komponencie WebView. Tej metody można też używać do wyłączania raportów atrybucji w komponencie WebView. Dodatkowo dodaliśmy nowy interfejs API
- Dodano interfejsy API zastępujące metadane klienta użytkownika na potrzeby wskazówek dla klienta.
- Wprowadziliśmy nowy interfejs API WebSettingsCompat#setUserAgentMetadata, który zastępuje metadane klienta użytkownika dla komponentu WebView używane do wypełniania wskazówek klienta użytkownika. Dodaliśmy też nowy interfejs API WebSettingsCompat#getUserAgentMetadata, który umożliwia pobieranie bieżących zastąpień klienta użytkownika. Zachęcamy aplikacje, aby używały nowego interfejsu API do ustawienia odpowiednich wartości zastępowania za każdym razem, gdy aplikacja zmienia domyślny ciąg znaków klienta użytkownika za pomocą funkcji WebSettings.setUserAgentString. Zapewni to użycie prawidłowych wartości we wszystkich sytuacjach.
Wersja 1.9.0-rc01
15 listopada 2023 r.
Aplikacja 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
Aplikacja androidx.webkit:webkit:1.9.0-beta01
została zwolniona. Wersja 1.9.0-beta01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Rozwiąż problem związany z brakiem wartości null w interfejsie API metadanych klienta użytkownika. Aktualizujemy klasę
BrandVersion
, aby używać wzorca konstruktora, a metody pobierania i ustawiania klasyUserAgentMetadata
są spójne. (Ibf195) - Dodaję adnotacje do
ProfileStore
,WebViewCompat#setProfile
iWebViewCompat.getProfile
z@UiThread
. (I499b2)
Wersja 1.9.0-alfa01
18 października 2023 r.
Aplikacja androidx.webkit:webkit:1.9.0-alpha01
została zwolniona. Wersja 1.9.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaliśmy wieloprofilowy interfejs API, który umożliwia prowadzenie osobnych sesji przeglądania w usłudze
WebViews
, a każdy profil ma własne dane (np. pliki cookie). Możesz tworzyć profile, przypisywać je doWebView
instancji i pobierać je później na potrzeby dowolnego dostępu do danych. Dostępna jest jednorazowa klasaProfileStore
, która pomoże Ci zarządzać profilami przez ich tworzenie lub usuwanie za pomocą interfejsów API:getOrCreateProfile
,getProfile
,getAllProfileNames
ideleteProfile
. KlasaProfile
będzie korzystać z różnych interfejsów API do pobierania danych powiązanych z tym profilem. Mogą to być np. nazwa,GeoLocationPermissions
,ServiceWorkerController
,CookieManager
iWebStorage
. Każdy zasóbWebView
będzie domyślnie uruchamiany z profilem domyślnym, ale możesz zmienić to ustawienie za pomocą opcjiWebViewCompat#setProfile
. Z tego powodu profil użytkownikaWebView
można pobrać za pomocą usługiWebViewCompat#getProfile
. (I32d22) - Dodaj interfejsy API, aby zmienić sposób rejestrowania zdarzeń Attribution Reporting. Wprowadziliśmy nowy interfejs API
WebSettingsCompat#setAttributionRegistrationBehavior
, który pozwala deweloperom określać, czy źródła i aktywatory są rejestrowane jako pochodzące z samej aplikacji, czy z treści internetowych w interfejsieWebView
. Tej metody można też używać do wyłączania raportów atrybucji wWebView
. Dodatkowo dodaliśmy nowy interfejs APIWebSettingsCompat#getAttributionRegistrationBehavior
, aby uzyskać obecny stan. 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 dla komponentu WebView, które służą do wypełniania wskazówek dotyczących klienta użytkownika. Dodaliśmy też kolejny nowy interfejs APIWebSettingsCompat#getUserAgentMetadata
, aby pobrać aktualne zastąpienia klienta użytkownika. Zachęcamy aplikacje, aby korzystały z nowego interfejsu API w celu ustawienia odpowiednich wartości zastępowania, zamiast polegać na zmianie klienta użytkownika. (I74500) - Dodaj interfejs API, aby wstrzykiwać uruchamianie JavaScriptu podczas wczytywania strony. Interfejs
WebViewCompat.addDocumentStartJavascript
API umożliwia aplikacjom wstrzykiwanie do komponentu WebView skryptów, które będą uruchamiane przed wykonaniem skryptów stron. Interfejs API pozwala aplikacji określić docelową listę źródeł, na których skrypt ma zostać włączony. Dzięki temu będzie on działać tylko na zamierzonych stronach. W przeciwieństwie do interfejsuWebView.evaluateJavascript
ten interfejs API umożliwia wykonywanie skryptów w osadzonych elementach iframe podczas ładowania. (Ide063).
Wersja 1.8
Wersja 1.8.0
6 września 2023 r.
Aplikacja androidx.webkit:webkit:1.8.0
została zwolniona. Wersja 1.8.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.7.0
- Dodano obsługę przekazywania parametru
ArrayBuffer
przezWebMessagePortCompat#postMessage
,JavaScriptReplyProxy#postMessage
iWebViewCompat#postWebMessage
, odbierania koduArrayBuffer
z kodu JavaScript w wersjachWebMessagePortCompat
iWebMessageListener
oraz odbieraniaArrayBuffer
z JavaScriptu przezWebMessagePortCompat
. (Aosp/2596550, b/251152171)
Wersja 1.8.0-rc01
9 sierpnia 2023 r.
Wersja 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.
Wersja 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-alfa01
7 czerwca 2023 r.
Aplikacja androidx.webkit:webkit:1.8.0-alpha01
została zwolniona. Wersja 1.8.0-alpha01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Zobacz sekcję Wkład z zewnątrz.
Wkład z zewnątrz
- Dodano obsługę przekazywania
ArrayBuffer
przezWebMessagePortCompat#postMessage
,JsReplyProxy#postMessage
iWebViewCompat#postWebMessage
, odbieraniaArrayBuffer
z JavaScriptu za pośrednictwemWebMessagePortCompat
iWebMessageListener
oraz odbieraniaArrayBuffer
z JavaScriptu przezWebMessagePortCompat
. Pamiętaj, że ten interfejs API będzie dostępny dopiero odWebView
w wersji 116. (Ie7567, b/251152171)
Wersja 1.7
Wersja 1.7.0
24 maja 2023 r.
Aplikacja androidx.webkit:webkit:1.7.0
została zwolniona. Wersja 1.7.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.6.0
- W wersji
WebView
dodaliśmy obsługę przeciągania obrazu. Aby umożliwić użytkownikom przeciąganie obrazów zWebView
, dodaj nowy tagDropDataContentProvider
do pliku manifestu aplikacji zgodnie z opisem w dokumentacji klasy. - Dodaliśmy interfejs API
ProcessGlobalConfig#setDirectoryBasePaths(Context,File,File)
, który może służyć do ustawiania katalogów podstawowych, którychWebView
będzie używać w bieżącym procesie. Tak jak w przypadku wszystkich metod wProcessGlobalConfig
, tę metodę należy wywołać przed utworzeniem wystąpienia pierwszego wystąpienia metodyWebView
. Ta metoda jest dodawana, aby umożliwić platformie Android dostosowywanie ustawieńWebView
. W przypadku zastosowań ogólnych nie zalecamy korzystania z tej metody.
Wersja 1.7.0-rc01
10 maja 2023 r.
Wersja 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.
Aplikacja androidx.webkit:webkit:1.7.0-beta01
została zwolniona. Wersja 1.7.0-beta01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Drobna zmiana w flagi funkcji i nazwie metody oraz sprawiła, że
setDirectoryBasePaths()
akceptował plik zamiast ciągu znaków (Ib0d0a)
Wersja 1.7.0-alfa03
8 marca 2023 r.
Aplikacja androidx.webkit:webkit:1.7.0-alpha03
została zwolniona. Wersja 1.7.0-alpha03 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Dodaj interfejs
ProcessGlobalConfig#setDirectoryBasePath(String, String)
API, 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
- Napraw nieprawidłową regułę
ProGuard
, która powoduje błędy kompilacji przy korzystaniu zDexGuard
(Ia65c2, b/270034835)
Wersja 1.7.0-alfa02
8 lutego 2023 r.
Aplikacja androidx.webkit:webkit:1.7.0-alpha02
została zwolniona. Wersja 1.7.0-alpha02 zawiera te zatwierdzenia.
Poprawki błędów
- Błędy w dokumentacji dotyczącej
DropDataContentProvider
.
Wersja 1.7.0-alfa01
25 stycznia 2023 r.
Aplikacja androidx.webkit:webkit:1.7.0-alpha01
została zwolniona. Wersja 1.7.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
- Dodajemy obsługę przeciągania obrazu w
WebView
. Możesz umożliwić użytkownikom przeciąganie obrazów zWebView
do pliku manifestu aplikacji. Wystarczy, że dodasz do pliku manifestu nowy tagDropDataContentProvider
. (05a1a6)
Wersja 1.6
Wersja 1.6.1
22 marca 2023 r.
Aplikacja androidx.webkit:webkit:1.6.1
została zwolniona. Wersja 1.6.1 zawiera te zatwierdzenia.
Poprawki błędów
- Naprawianie błędu analizy Promocji (Ia65c2)
Wersja 1.6.0
25 stycznia 2023 r.
Aplikacja androidx.webkit:webkit:1.6.0
została zwolniona. Wersja 1.6.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.5.0
- Dodano nowy interfejs API ProcessGlobalConfig, który umożliwia aplikacjom podawanie ustawień konfiguracji, które trzeba skonfigurować przed wczytaniem komponentu WebView, takich jak sufiks katalogu danych WebView. Konfigurację należy skonfigurować i zastosować jak najwcześniej podczas uruchamiania aplikacji, aby miało to miejsce, zanim inny wątek będzie mógł wywołać metodę, która wczytuje w procesie
WebView
. - Dodano nowy interfejs API CookieManagerCompat w celu rozwinięcia interfejsu android.webkit.CookieManager o nową metodę
getCookieInfo
, która pobiera wszystkie atrybuty ze wszystkich plików cookie ustawionych w określonym adresie URL. Różni się to od istniejącego interfejsu API getCookie wCookieManager
, który zwraca tylko nazwy i atrybuty wartości plików cookie. - W usłudze
WebSettingsCompat
dostępne są nowe metody włączania i wyłączania działaniaEnterpriseAuthenticationAppLinkPolicy
, jeśli zostały ustawione przez administratora w domenieWebView
, oraz do pobierania bieżącego ustawienia. Dzięki tej funkcji komponent WebView może otwierać aplikację uwierzytelniania zamiast otwierać adres URL uwierzytelniania. Ta funkcja nie ma wpływu na urządzenia, które nie są zarządzane przy użyciu zasad przedsiębiorstwa. - Dodano nowy interfejs API do
WebSettingsCompat
, aby umożliwić aplikacjom jawne wysyłanie nazwy pakietu aplikacji z nagłówkaX-Requested-With
do źródeł z listy dozwolonych. Nagłówek był zwykle wysyłany przy każdym żądaniu zWebView
.
Wersja 1.6.0-rc01
11 stycznia 2023 r.
Aplikacja androidx.webkit:webkit:1.6.0-rc01
została zwolniona. Wersja 1.6.0-rc01 zawiera te zatwierdzenia.
Poprawki błędów
- Poprawiono błąd
NullPointerException
w tabeliWebViewFeature.isStartupFeatureSupported(Context, String)
w przypadku uruchomienia z pakietem SDK < L. (Ic7292)
Wersja 1.6.0-beta01
7 grudnia 2022 r.
Aplikacja androidx.webkit:webkit:1.6.0-beta01
została zwolniona. Wersja 1.6.0-beta01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Komponent
ProcessGlobalConfig
został zmieniony tak, aby korzystać ze zwykłego konstruktora i metody statycznego stosowania. Metoda stosowania powinna być wywoływana tylko raz dla każdego procesu, jak najwcześniej, i jeśli zostanie wywołana więcej niż raz, spowoduje zgłoszenie funkcjiIllegalStateException
. ObiektyProcessGlobalConfig
nie mają już żadnych ograniczeń dotyczących liczby wywołań metod ustawiających. (I456c3)
Wersja 1.6.0-alfa03
9 listopada 2022 r.
Aplikacja androidx.webkit:webkit:1.6.0-alpha03
została zwolniona. Wersja 1.6.0-alpha03 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaj klasę
ProcessGlobalConfig
umożliwiającą użytkownikom ustawianie globalnej konfiguracji procesu przed wczytaniem klasyWebView
.WebView
ma pewne parametry konfiguracji na poziomie globalnym procesu, których nie można zmienić po wczytaniu elementuWebView
(np. katalog danychWebView
). Ta klasa zezwala aplikacjom na ustawianie tych parametrów. Konfigurację należy skonfigurować i zastosować jak najwcześniej podczas uruchamiania aplikacji, aby miało to miejsce, zanim inny wątek będzie mógł wywołać metodę, która wczytuje w procesieWebView
. (I7c0e0, b/250553687) - Dodano nowy interfejs API, który umożliwia aplikacjom jawne wysyłanie nazwy pakietu aplikacji w nagłówku X-Requested-With do źródeł z listy dozwolonych. Nagłówek był zwykle wysyłany przy każdym żądaniu z
WebView
. (I0adfe, b/226552535)
Zmiany w interfejsie 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 efekcie ten interfejs API nie jest już oznaczony jako@RequiresApi(Build.VERSION_CODES.Q)
. (I3ac1d).
Wersja 1.6.0-alfa02
24 października 2022 r.
Aplikacja androidx.webkit:webkit:1.6.0-alpha02
została zwolniona. Wersja 1.6.0-alpha02 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaje nową klasę
CookieManagerCompat
wraz z interfejsem APIgetCookieInfo
, który pobiera wszystkie atrybuty ze wszystkich plików cookie ustawionych pod określonym adresem URL. Różni się to od obecnego interfejsu APIgetCookie
w interfejsieCookieManager
, który zwraca tylko nazwy i atrybuty wartości plików cookie. (I07365, b/242161756)
Wersja 1.6.0-alfa01
24 sierpnia 2022 r.
Aplikacja androidx.webkit:webkit:1.6.0-alpha01
została zwolniona. Wersja 1.6.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
- W projekcie
WebSettingsCompat
dodano interfejsy API, które umożliwiają włączanie i wyłączanie działania funkcjiEnterpriseAuthenticationAppLinkPolicy
, jeśli zostały ustawione przez administratora w regionieWebView
. Dzięki tej funkcjiWebView
może otwierać aplikację uwierzytelniania zamiast otwierać adres URL uwierzytelniania. Ta funkcja nie ma wpływu na urządzenia, które nie są zarządzane przy użyciu zasad przedsiębiorstwa.
Wersja 1.5.0
Wersja 1.5.0
24 sierpnia 2022 r.
Aplikacja androidx.webkit:webkit:1.5.0
została zwolniona. Wersja 1.5.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.4.0
- Nowy interfejs API
setAlgorithmicDarkeningAllowed
wWebSettingsCompat
zastępuje stare interfejsy APIsetForceDark
isetForceDarkStrategy
. Aplikacje kierowane na pakiet SDK 33 lub nowszy (T) powinny używać nowego interfejsu API, ponieważ w jego przypadku stary interfejs API nie będzie już działał. - Listę dozwolonych adresów URL, które mogą korzystać ze skonfigurowanego serwera proxy, można teraz skonfigurować w
ProxyCofig.Builder
. Aby to zrobić, ustawsetReverseBypassEnabled
natrue
. W takim przypadku wszystkie inne adresy URL będą pomijać skonfigurowany serwer proxy.
Wersja 1.5.0-rc01
10 sierpnia 2022 r.
Wersja 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.
Aplikacja androidx.webkit:webkit:1.5.0-beta01
została zwolniona. Wersja 1.5.0-beta01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Interfejsy API związane z zaciemnieniem alogarytmicznym są teraz oznaczone adnotacjami i wymagają interfejsu API na poziomie Q. Interfejs API nie będzie miał wpływu na poziomy interfejsu API < Q, ponieważ ciemny motyw nie jest dostępny na tych urządzeniach. (I0905e)
Wersja 1.5.0-alfa01
18 maja 2022 r.
Aplikacja androidx.webkit:webkit:1.5.0-alpha01
została zwolniona. Wersja 1.5.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaj nową metodę
getVariationsHeader()
wWebViewCompat
, aby otrzymywać wartość nagłówka X-Client-Data wysłanego przezWebView
. Zwrócona wartość będzie zakodowaną w formacie base64 protobuf ClientConditions. - Dodaj interfejsy API w
WebSettingsCompat
, aby umożliwić lub uniemożliwić algorytmiczne przyciemnianie w przypadku aplikacji z wartością targetSdk >= 33. (I29597)
Zmiany w interfejsie API
- Dodaj nową metodę w
ProxyCofig.Builder
, aby ustawić odwrotne ominięcie. Jeśli zasada odwrotnego pomijania ma wartość Prawda, z ustawień serwera proxy będą używane tylko adresy URL znajdujące się na liście pomijanych. (I9eaa2, b/168728599)
Poprawki błędów
- Usunięto literówkę w dokumentacji ciemnego motywu. (I36ebf, b/194343633)
- Naprawiono błąd, przez który metody
WebViewAssetLoader.Builder
były nieumyślnie zależne od kolejności. (If420d, b/182196765)
Wersja 1.4.0
Wersja 1.4.0
16 grudnia 2020 roku
Aplikacja 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ł interfejssetSafeBrowsingWhitelist()
. Dzięki temu aplikacje mogą zaktualizować kod, aby uniknąć terminologii nieuwzględniającej integracji społecznej, a jednocześnie obsługiwać ten sam zakres wersji pakietów Android SDK i komponentów WebView co wycofany interfejs API. - Naprawiono błąd w zestawie proxy setProxyOverride, który powodował, że reguły kreacji zastępczych nie były prawidłowo stosowane.
Wersja 1.4.0-rc02
Grudzień 2, 2020
Aplikacja androidx.webkit:webkit:1.4.0-rc02
została zwolniona. Wersja 1.4.0-rc02 zawiera te zatwierdzenia.
Poprawki błędów
- Poprawia nieprawidłowe stosowanie reguł kreacji zastępczych, gdy używana jest funkcja setProxyOverride.
Wersja 1.4.0-rc01
11 listopada 2020 roku
Wersja 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.
Wersja 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-alfa01
16 września 2020 roku
Aplikacja androidx.webkit:webkit:1.4.0-alpha01
została zwolniona. Wersja 1.4.0-alpha01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Dodano nowy interfejs API
WebViewCompat#setSafeBrowsingAllowlist()
, który zastąpiłsetSafeBrowsingWhitelist()
. Dzięki temu aplikacje mogą aktualizować kod tak, aby unikać terminologii nie inkluzywnej, a jednocześnie obsługiwać ten sam zakres pakietów Android SDK i wersji WebView co wycofany interfejs API. (I8d65d)
Wersja 1.3.0
Wersja 1.3.0
19 sierpnia 2020 r.
Aplikacja 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 daje większą kontrolę nad przyciemnianiem WebView (zaciemnianie elementów CSS lub stron internetowych w porównaniu z automatycznym przyciemnianiem).
- Interfejs WebMessageListener i powiązane z nim interfejsy API zapewniają prosty i bezpieczny mechanizm nawiązywania komunikacji między treściami internetowymi a aplikacją do umieszczania znaczników WebView.
- Interfejs API
isMultiProcessEnabled
do sprawdzania, czy komponent WebView działa w wielu procesach. Jest to możliwe od Androida O, co oznacza, że treści internetowe są renderowane w ramach procesu renderowania w trybie piaskownicy, niezależnie od procesu aplikacji. Ten mechanizm renderowania w trybie piaskownicy może być udostępniany innym komponentom WebView w tej samej aplikacji, ale nie jest współużytkowany z innymi procesami aplikacji.
Wersja 1.3.0-rc02
5 sierpnia 2020 r.
Aplikacja androidx.webkit:webkit:1.3.0-rc02
została zwolniona. Wersja 1.3.0-rc02 zawiera te zatwierdzenia.
Poprawki błędów
- Rozwiązaliśmy problem ze zgodnością, który powodował, że
WebMessageListener
czasami ulegał awarii podczas lokalnego programowania, jeśli aplikacja została uruchomiona z użyciem szybkiego uruchamiania Android Studio.
Wersja 1.3.0-rc01
24 czerwca 2020 r.
Wersja 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.
Aplikacja 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 WebView (zaciemnianie CSS/treści strony internetowej lub automatyczne przyciemnianie). - Interfejsy API
WebMessageListener
zapewniają prosty i bezpieczny mechanizm nawiązywania komunikacji między treściami z internetu a aplikacją umieszczoną na stronie WebView. - Interfejs API
MultiProcessEnabled
do sprawdzania, czy komponent WebView działa w trybie wielu procesów.
Wersja 1.3.0-alfa03
27 maja 2020 r.
Aplikacja androidx.webkit:webkit:1.3.0-alpha03
została zwolniona. Wersja 1.3.0-alpha03 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Metoda
addWebMessageListener
otrzymuje terazSet<String>
reguł dozwolonych źródeł (wcześniejList<String>
).
Wersja 1.3.0-alfa02
29 kwietnia 2020 r.
Aplikacja androidx.webkit:webkit:1.3.0-alpha02
została zwolniona. Wersja 1.3.0-alpha02 zawiera te zatwierdzenia.
Nowe funkcje
- MultiProcessEnabled API do sprawdzenia, czy WebView działa w trybie wielu procesów.
Zmiany w interfejsie API
- Wszystkie stałe strategii ciemnej mają teraz prefiks
DARK_STRATEGY
.
Wersja 1.3.0-alfa01
15 kwietnia 2020 roku
Aplikacja androidx.webkit:webkit:1.3.0-alpha01
została zwolniona. Wersja 1.3.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
- Interfejs API
ForceDarkStrategy
do kontrolowania przyciemnieniaWebView
(zaciemnianie CSS/treści strony internetowej lub automatyczne przyciemnianie). - Interfejsy API
WebMessageListener
zapewniają prosty i bezpieczny mechanizm nawiązywania komunikacji między treściami z internetu a aplikacją umieszczoną na stronie WebView.
Wersja 1.2.0
Wersja 1.2.0
4 marca 2020 r.
Aplikacja androidx.webkit:webkit:1.2.0
została zwolniona. Wersja 1.2.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.1.0
- Dodano interfejs ForceDark API do kontrolowania, czy komponenty WebView mają być renderowane w trybie ciemnym.
Wersja 1.2.0-rc01
19 lutego 2020 r.
Wersja 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.
Wersja 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-alfa01
18 grudnia 2019 r.
Aplikacja androidx.webkit:webkit:1.2.0-alpha01
została zwolniona. Wersja 1.2.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
- Interfejs ForceDark API pozwala określić, czy komponenty WebView mają być renderowane w trybie ciemnym.
Wersja 1.1.0
Wersja 1.1.0
7 listopada 2019 r.
Aplikacja androidx.webkit:webkit:1.1.0
została zwolniona. Wersja 1.1.0 zawiera te zatwierdzenia.
Ważne zmiany od wersji 1.0.0
- Interfejsy API getter uzupełniające funkcje setWebViewClient() i setWebChromeClient().
- ProxyController API do ustawiania serwera proxy żądań sieciowych dla komponentów WebView aplikacji.
- Interfejs WebViewAssetLoader API, który 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 o śledzeniu WebView na potrzeby debugowania.
- Interfejsy RenderProcess API w celu zarządzania usługami mechanizmu renderowania WebView i wykrywania, kiedy niewłaściwie zachowana treść powoduje, że mechanizmy renderowania WebView przestają reagować.
- Zaktualizowaliśmy istniejące interfejsy API, aby uwzględnić adnotacje z możliwością null (
@NonNull
,@Nullable
) i adnotacjami (@UiThread
,@WorkerThread
).
Wersja 1.1.0-rc01
9 października 2019 r.
Aplikacja 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ę
setWebViewRenderProcessClient()
po przekazaniu klienta o wartości null.
Wersja 1.1.0-beta01
5 września 2019 r.
Aplikacja androidx.webkit:webkit:1.1.0-beta01
została zwolniona. Zatwierdzenia zawarte w tej wersji znajdziesz tutaj.
Nowe funkcje
- Nowy plik
InternalStoragePathHandler
w przeglądarceWebViewAssetLoader
do wczytywania plików z katalogu danych aplikacji.
Zmiany w interfejsie 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
- Jeśli
WebViewAssetLoader
nie może odgadnąć typu MIME na podstawie ścieżki pliku, domyślnie jest ustawiany na „tekst/zwykły” typ MIME (zamiast wartości null). WebViewAssetLoader
nie zwraca już błęduNullPointerException
podczas wczytywania plików ze znakami specjalnymi w nazwach ścieżek.
Wersja 1.1.0-alfa02
7 sierpnia 2019 r.
Aplikacja androidx.webkit:webkit:1.1.0-alpha02
została zwolniona. Zatwierdzenia zawarte w tej wersji znajdziesz tutaj.
Nowe funkcje
WebViewAssetLoader
ujawnia interfejsPathHandler
, aby umożliwić aplikacjom tworzenie niestandardowych funkcji obsługi ścieżek.
Zmiany w interfejsie API
WebViewAssetLoader
jest teraz ostateczną klasą, ponieważ nie powinna być podklasą.WebViewAssetLoader#PathHandler
implementacji jest teraz publiczne i ostateczne.- Drobne zmiany w nazwach metod ProxyConfig.
ProxyController
: dodano nowe metodyaddDirect()
iaddDirect(String)
umożliwiające bezpośrednie połączenie z serwerami; usunięto ciąg tekstowy DIRECT.- Zaktualizowaliśmy istniejące interfejsy API, aby uwzględnić adnotacje z możliwością null (
@NonNull
,@Nullable
) i adnotacjami (@UiThread
,@WorkerThread
).
Wersja 1.1.0-alfa01
7 maja 2019 r.
Aplikacja 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 interfejsy
setWebViewClient()
isetWebChromeClient()
- ProxyController API do ustawiania serwera proxy żądań sieciowych dla komponentów WebView aplikacji.
- Interfejs AssetLoader API, który upraszcza wczytywanie zasobów i zasobów plików APK przez przechwytywanie żądań, umożliwiając dostęp do zasobów internetowych bez wyłączania CORS.
- Interfejs trackingController API do zbierania informacji o śledzeniu WebView na potrzeby debugowania.
- Interfejsy RenderProcess API w celu zarządzania usługami mechanizmu renderowania WebView i wykrywania, kiedy niewłaściwie zachowana treść powoduje, że mechanizmy renderowania WebView przestają reagować.
Poprawki błędów
- Drobne poprawki w formatowaniu dokumentacji istniejących interfejsów API.