Webkit

Działa z nowoczesnymi interfejsami WebView API na Androidzie 5 i nowszym.
Najnowsza aktualizacja Wersja stabilna Wersja kandydująca do publikacji Wersja Beta Wersja alfa
2 lipca 2025 r. 1.14.0 - - 1.15.0-alpha01

Deklarowanie zależności

Aby dodać zależność od WebKit, musisz dodać do projektu repozytorium Google Maven. Więcej informacji znajdziesz w repozytorium Maven Google.

Dodaj zależności dotyczące potrzebnych artefaktów w pliku build.gradle aplikacji lub modułu:

Odlotowe

dependencies {
    implementation "androidx.webkit:webkit:1.14.0"
}

Kotlin

dependencies {
    implementation("androidx.webkit:webkit:1.14.0")
}

Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.

Opinia

Twoja opinia pomoże nam ulepszyć Jetpacka. Jeśli odkryjesz nowe problemy lub masz pomysły na ulepszenie tej biblioteki, daj nam znać. Zanim utworzysz nową kartę, zapoznaj się z dotychczasowymi problemami w tej bibliotece. Możesz dodać swój głos do istniejącego problemu, klikając przycisk gwiazdki.

Tworzenie nowego problemu

Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.

Wersja 1.15

Wersja 1.15.0-alpha01

2 lipca 2025 r.

Zostanie wycofaneandroidx.webkit:webkit:1.15.0-alpha01 Wersja 1.15.0-alpha01 zawiera te zmiany.

Nowe funkcje

  • Nowy interfejs API do ustawiania par nazwa-wartość nagłówka HTTP w żądaniach kierowanych do określonych źródeł.
    Metoda Profile.setOriginMatchedHeader umożliwia aplikacji określenie, że nazwa i wartość nagłówka powinny być ustawiane we wszystkich żądaniach HTTP/HTTPS kierowanych do źródeł zgodnych z podaną listą dozwolonych, gdy są wysyłane z elementów WebView i procesów roboczych usługi, które używają danego profilu. Interfejs API umożliwia tylko jedno mapowanie dla każdej nazwy nagłówka i zgłasza wyjątek, jeśli nazwa nagłówka jest już ustawiona.
     Użyj Profile.clearOriginMatchedHeader, aby usunąć istniejące mapowanie, a Profile.clearAllOriginMatchedHeaders, aby usunąć wszystkie mapowania. (Ida7f1, b/419469873)
  • Nowy interfejs API umożliwiający dostęp do plików cookie i ich ustawianie w ramach shouldInterceptRequest wywołań zwrotnych w przypadku komponentu WebView i procesów Service Worker.
    Deweloperzy aplikacji, którzy obecnie mają dostęp do interfejsu CookieManager API w ramach shouldInterceptRequest, mogą teraz włączać nagłówki plików cookie bezpośrednio, wywołując setIncludeCookiesOnShouldInterceptRequest. Spowoduje to dodanie przez WebView nagłówka Cookie do mapy WebResourceRequest.getRequestHeaders(), który będzie zawierać dokładne pliki cookie mające zastosowanie do żądania. Prawidłowo obsługuje też oddzielone pliki cookie.
    Aplikacje mogą podawać wartości nagłówka Set-Cookie za pomocą nowo dodanego interfejsu WebResourceResponseCompat.setCookies API. Wartości Set-Cookie dodane w tym miejscu będą przetwarzane przez WebView w ramach obsługi odpowiedzi. (Idbfd1, b/414769380)
  • Nowy eksperymentalny interfejs API do rozgrzewania procesu renderowania dla Profile.
     Ten interfejs API może być używany przez aplikacje ze złożonym cyklem życia komponentu WebView, aby zapewnić działanie procesu renderowania, nawet jeśli wszystkie instancje WebView zostały zniszczone. (Ia8fc8)

Zmiany w interfejsie API

  • Dodaj nową metodę do eksperymentalnego interfejsu Nawigacja, aby podać adres URL nawigacji. (I1c6c0)
  • Zaktualizowaliśmy nazwę funkcji wstępnego pobierania profilu, aby wyjaśnić, że interfejs API wstępnego pobierania można teraz wywoływać w wątku w tle. (I7c83a)

Wersja 1.14

Wersja 1.14.0

4 czerwca 2025 r.

Zostanie wycofaneandroidx.webkit:webkit:1.14.0 Wersja 1.14.0 zawiera te zmiany.

Ważne zmiany od wersji 1.13.0

  • Wprowadzamy interfejs API PaymentRequest do wywoływania natywnych aplikacji płatniczych na Androida za pomocą intencji org.chromium.intent.action.PAY. PaymentRequest jest domyślnie wyłączona, a WebView aplikacje hosta mogą wywołać WebSettingsCompat.setPaymentRequestEnabled(settings, true), aby ją włączyć. Dodatkowo PaymentRequest wymaga tagu <queries> w sekcji AndroidManifest.xml. Więcej informacji znajdziesz w dokumentacji setPaymentRequestEnabled().
  • Wprowadzamy eksperymentalny interfejs Navigation API, który umożliwia ulepszone śledzenie nawigacji w internecie i zarządzanie nią w WebView. Te interfejsy API dostarczają szczegółowe informacje o zdarzeniach nawigacji. Zacznij od wywołania funkcji WebViewCompat.setNavigationClient z implementacją nowego interfejsu WebNaviagationClient, aby uzyskać szczegółowe informacje o nawigacji po stronie. Więcej informacji o cyklu życia nawigacji znajdziesz w artykule Life of a Navigation Presentation (w języku angielskim).

Wersja 1.14.0-rc01

20 maja 2025 r.

Zostanie wycofaneandroidx.webkit:webkit:1.14.0-rc01 Wersja 1.14.0-rc01 zawiera te zmiany.

  • Nie ma zmian w stosunku do 1.14.0-beta01.

Wersja 1.14.0-beta01

7 maja 2025 r.

Zostanie wycofaneandroidx.webkit:webkit:1.14.0-beta01 Wersja 1.14.0-beta01 zawiera te zmiany.

Zmiany w interfejsie API

  • Dodawanie kontekstu jako parametru do interfejsu startUpWebView() API (Ic29cd, b/406701301)

Wersja 1.14.0-alpha01

9 kwietnia 2025 r.

Zostanie wycofaneandroidx.webkit:webkit:1.14.0-alpha01 Wersja 1.14.0-alpha01 zawiera te zmiany.

Nowe funkcje

  • Wprowadzamy interfejs API PaymentRequest do wywoływania natywnych aplikacji płatniczych na Androida za pomocą intencji org.chromium.intent.action.PAY. PaymentRequest jest domyślnie wyłączona, a aplikacje hosta WebView mogą wywoływać WebSettingsCompat.setPaymentRequestEnabled(settings, true), aby ją włączyć. Dodatkowo PaymentRequest wymaga tagu <queries> w sekcji AndroidManifest.xml. Więcej informacji znajdziesz w dokumentacji setPaymentRequestEnabled(). (I3304e, b/404920055)
  • Wprowadzamy wywołania zwrotne nawigacji eksperymentalnej. Ta wersja wprowadza eksperymentalne interfejsy API do ulepszonego śledzenia i zarządzania nawigacją w internecie w WebView. Te interfejsy API dostarczają szczegółowe informacje o zdarzeniach nawigacji. Najważniejsze funkcje:
    • WebNavigationClient Interfejs: wprowadza nowy interfejs WebNavigationClient z wywołaniami zwrotnymi dla zdarzeń nawigacji:
    • onNavigationStarted(Navigation navigation): powiadamia o rozpoczęciu nawigacji.
    • onNavigationRedirected(Navigation navigation): powiadamia o przekierowaniu nawigacji.
    • onNavigationCompleted(Navigation navigation): powiadamia o zakończeniu nawigacji.
    • Navigation Interfejs: zawiera szczegółowe informacje o nawigacji, w tym: adres URL, stan inicjowania strony, stan tego samego dokumentu, stan ponownego wczytania, stan historii, stan wstecz/dalej, stan zatwierdzenia, stan strony błędu, kod stanu i stan przywracania sesji. Obiekt Navigation służy jako unikalny identyfikator każdej nawigacji, co umożliwia deweloperom korelowanie powiązanych zdarzeń nawigacji.
    • Page class: wprowadza klasę Page, która służy jako klucz do danych powiązanych ze stroną. (I351a6)
  • Wprowadzamy nowy eksperymentalny interfejs API, który umożliwia przełączanie działania obiektów dostawcy pamięci podręcznej. (I14636)

Zmiany w interfejsie API

  • Zaktualizowaliśmy wartość funkcji PROFILE_URL_PREFETCH w pliku WebViewFeature. (I606fd)
  • Dodaje WebViewCompat#saveState, podobnie jak WebView#saveState, ale umożliwia ograniczenie rozmiaru zwracanego stanu i określenie, czy zapisywać wpisy w historii do przodu. (Iea7d6)
  • Dodawanie konfiguracji maxPrerenders do interfejsu SpeculativeLoadingConfig API (I67245)

Wersja 1.13

Wersja 1.13.0

12 marca 2025 r.

Zostanie wycofaneandroidx.webkit:webkit:1.13.0 Wersja 1.13.0 zawiera te zmiany.

Ważne zmiany od wersji 1.12.0

  • Wprowadzenie nowego eksperymentalnego interfejsu API do wstępnego renderowania adresów URL, który umożliwi programistom spekulacyjne wstępne renderowanie adresów URL kandydatów, co przyspieszy nawigację. (I0cfe7)
  • Wprowadzamy zestaw nowych interfejsów API do usuwania danych przeglądania przechowywanych przez WebView. Nowe interfejsy API w WebStorageCompat są preferowane w stosunku do dotychczasowych interfejsów API w android.webkit.WebStorage, ponieważ gwarantują usunięcie wszystkich danych z pamięci lokalnej, w tym pamięci podręcznej sieci i plików cookie, a także zainstalowanych service workerów. Jeśli w przyszłości zostaną wprowadzone nowe interfejsy API pamięci, te nowe metody zostaną zaktualizowane, aby uwzględniać je w usuwanej pamięci. (Iad54f, b/382273208)
  • Dodaj interfejs setPartitionedCookiesEnabled API. Umożliwi to programistom włączanie i wyłączanie plików cookie z podziałem na partycje w WebView. (Ic506a, b/364904765)
  • Dodaj interfejs API tagowania gniazd do WebView, aby rozliczać ruch sieciowy WebView za pomocą NetworkStatsManager/TrafficStats. Ta funkcja będzie dostępna tylko w WebView M133. (Ica441, b/374932688)
  • Dodano eksperymentalny interfejs API WebView do asynchronicznego uruchamiania. (I94b8a)
  • Wstępne pobieranie adresów URL w profilu: w Profile wprowadziliśmy nowy interfejs API, który umożliwia programistom wywoływanie wstępnego pobierania adresów URL. Czyszczenie pobierania z wyprzedzeniem: dodano interfejs API do czyszczenia trwających pobrań z wyprzedzeniem.(I42c5c)
  • Wycofaj: WebView.startSafeBrowsing. (If5626)

Wersja 1.13.0-rc01

26 lutego 2025 r.

Zostanie wycofaneandroidx.webkit:webkit:1.13.0-rc01 Ta wersja nie zawiera żadnych zmian w porównaniu z wersją 1.13.0-beta01.

Wersja 1.13.0-beta01

12 lutego 2025 r.

Zostanie wycofaneandroidx.webkit:webkit:1.13.0-beta01 Wersja 1.13.0-beta01 zawiera te zmiany.

Zmiany w interfejsie API

  • Dodano sufiks Async do interfejsu API prerender. Zmień nazwę dowolnego elementu Data na Header w NoVarySearch, aby odzwierciedlała nową nazwę. (Ie91c9)
  • Dodaj parametr wykonawcy do interfejsu API wstępnego renderowania adresu URL. Ogranicz też możliwość wywoływania interfejsu API tylko z wątku interfejsu. (I50520)
  • Dodaj interfejs API, aby skonfigurować konfigurację pamięci podręcznej dla żądań wstępnego pobierania profilu. Dotyczy to też żądań wstępnego renderowania zainicjowanych z WebViews powiązanych z tym profilem. (Iebb6e)

Poprawki błędów

  • Zmieniono działanie znaku URLUtilCompat.guessFileName, aby używać tylko parametru mimeType do sugerowania rozszerzenia nazw plików pochodzących z parametru adresu URL. (I53ecd, b/382864232)

Wersja 1.13.0-alpha03

15 stycznia 2025 r.

Zostanie wycofaneandroidx.webkit:webkit:1.13.0-alpha03 Wersja 1.13.0-alpha03 zawiera te zmiany.

Nowe funkcje

  • Wprowadzenie nowego eksperymentalnego interfejsu API do wstępnego renderowania adresów URL, który umożliwi programistom spekulacyjne wstępne renderowanie adresów URL kandydatów, co przyspieszy nawigację. (I0cfe7)
  • Wprowadzamy zestaw nowych interfejsów API do usuwania danych przeglądania przechowywanych przez WebView. Nowe interfejsy API w WebStorageCompat są preferowane w stosunku do dotychczasowych interfejsów API w android.webkit.WebStorage, ponieważ gwarantują usunięcie wszystkich danych z pamięci lokalnej, w tym pamięci podręcznej sieci i plików cookie, a także zainstalowanych service workerów. Jeśli w przyszłości zostaną wprowadzone nowe interfejsy API pamięci, te nowe metody zostaną zaktualizowane, aby uwzględniać je w usuwanej pamięci. (Iad54f, b/382273208)
  • Dodaj interfejs setPartitionedCookiesEnabled API. Umożliwi to programistom włączanie i wyłączanie plików cookie z podziałem na partycje w WebView. (Ic506a, b/364904765)

Zmiany w interfejsie API

  • Zmiana wymagania dotyczącego wątku w przypadku interfejsu Prefetch API, aby można go było wywoływać tylko w wątku interfejsu. (I866b5)
  • Zaktualizuj metody WebAuthn, aby podkreślić, że muszą być wywoływane w wątku interfejsu. Ten wymóg jest już egzekwowany przez implementację, a ta zmiana dodaje tylko odpowiednią adnotację. (I6d6ba)

Wersja 1.13.0-alpha02

11 grudnia 2024 r.

Zostanie wycofaneandroidx.webkit:webkit:1.13.0-alpha02 Wersja 1.13.0-alpha02 zawiera te zmiany.

Nowe funkcje

  • Dodaj interfejs API tagowania gniazd do WebView, aby rozliczać ruch sieciowy WebView za pomocą NetworkStatsManager/TrafficStats. Ta funkcja będzie dostępna tylko w WebView M133. (Ica441, b/374932688)

Zmiany w interfejsie API

  • Aktualizacja interfejsu Prefetch API przez zmianę nazwy PrefetchParameter na SpeculativeLoadingParamaters, wprowadzenie nowego parametru PrefetchNetworkException, zastąpienie parametru PrefetchOperationCallback parametrem OutcomeReceiverCompat i zaktualizowanie dokumentacji Javadoc. (If5072)
  • Uzyskiwanie informacji diagnostycznych z interfejsu API do asynchronicznego uruchamiania WebView.
  • Zapewnij aplikacjom możliwość wywoływania tylko inicjowania, które nie blokuje wątku interfejsu. (I9bf2b)

Poprawki błędów

  • Ta biblioteka używa teraz adnotacji o wartości null JSpecify, które są używane w typach. Deweloperzy korzystający z języka Kotlin powinni używać tego argumentu kompilatora, aby wymusić prawidłowe użycie: -Xjspecify-annotations=strict (jest to domyślne ustawienie od wersji 2.1.0 kompilatora Kotlin). (I0e4c5, b/326456246)

Wersja 1.13.0-alpha01

13 listopada 2024 r.

Zostanie wycofaneandroidx.webkit:webkit:1.13.0-alpha01 Wersja 1.13.0-alpha01 zawiera te zmiany.

Nowe funkcje

  • Dodano eksperymentalny interfejs API WebView do asynchronicznego uruchamiania. (I94b8a)
  • Wstępne pobieranie adresów URL w profilu: wprowadziliśmy w profilu nowy interfejs API, który umożliwia programistom wywoływanie wstępnego pobierania adresów URL. Wstępne pobieranie: dodano interfejs API do czyszczenia trwających wstępnych pobrań. (I42c5c)

Zmiany w interfejsie API

  • Wycofaj: WebView.startSafeBrowsing. (If5626)

Wersja 1.12

Wersja 1.12.1

2 października 2024 r.

Zostanie wycofaneandroidx.webkit:webkit:1.12.1 Wersja 1.12.1 zawiera te zmiany.

Poprawki błędów

  • Rozwiązaliśmy problem, który uniemożliwiał udostępnienie interfejsów API w wersji 1.12.0.

Wersja 1.12.0

18 września 2024 r.

Zostanie wycofaneandroidx.webkit:webkit:1.12.0 Wersja 1.12.0 zawiera te zmiany.

Ważne zmiany od wersji 1.11.0

  • Dodaj nowy interfejs API do WebSettingsCompat, aby włączyć lub wyłączyć BackForwardCache dla tego WebSettings. Ten interfejs API jest w wersji eksperymentalnej i w przyszłości może ulec zmianie. (aosp/3111705)
  • Dodano nowy interfejs API do WebSettingsCompat, aby kontrolować działanie spekulacyjnego wczytywania w przypadku tego WebSettings. Obecnie dostępna jest tylko opcja Wstępne renderowanie. Ten interfejs API jest w wersji eksperymentalnej i w przyszłości może ulec zmianie. (I13962)
  • Dodano nowy interfejs API, który umożliwia uwierzytelnianie w internecieWebView. Deweloperzy mogą włączać i wyłączać wywołania WebAuthnWebView w swoich aplikacjach za pomocą WebSettingsCompat#setWebAuthenticationSupport. (I8187f)

Wersja 1.12.0-rc01

4 września 2024 r.

Zostanie wycofaneandroidx.webkit:webkit:1.12.0-rc01 Ta wersja nie zawiera zmian w porównaniu z wersją 1.12.0-beta01.

Wersja 1.12.0-beta01

21 sierpnia 2024 r.

Zostanie wycofaneandroidx.webkit:webkit:1.12.0-beta01 Wersja 1.12.0-beta01 zawiera te zmiany.

Poprawki błędów

  • Usunęliśmy ręczne określanie dostępu do nowych interfejsów API platformy, ponieważ odbywa się to automatycznie za pomocą modelowania interfejsu API podczas korzystania z R8 z AGP 7.3 lub nowszym (np. R8 w wersji 3.3) oraz w przypadku wszystkich kompilacji podczas korzystania z AGP 8.1 lub nowszego (np. D8 w wersji 8.1). Klienci, którzy nie korzystają z AGP, powinni zaktualizować D8 do wersji 8.1 lub nowszej. Więcej szczegółów znajdziesz w tym artykule. (Ia60e0, b/345472586)

Wersja 1.12.0-alpha02

12 czerwca 2024 r.

Zostanie wycofaneandroidx.webkit:webkit:1.12.0-alpha02 Wersja 1.12.0-alpha02 zawiera te commity.

Nowe funkcje

  • Dodaj nowy interfejs API do WebSettingsCompat, aby włączyć lub wyłączyć BackForwardCache. Ten interfejs API jest w wersji eksperymentalnej i w przyszłości może ulec zmianie. (I64a38)
  • Dodano nowy interfejs API do WebSettingsCompat, który umożliwia kontrolowanie działania spekulacyjnego wczytywania w przypadku tych ustawień internetowych. Obecnie dostępna jest tylko opcja Wstępne renderowanie. Ten interfejs API jest w wersji eksperymentalnej i w przyszłości może ulec zmianie. (I13962)

Zmiany w interfejsie API

  • Niektóre metody są teraz w stosownych przypadkach dokumentowane za pomocą symbolu @UiThread. (I6c7e0), (I44541)
  • Metody bezpieczne wątkowo są teraz oznaczone symbolem @AnyThread. (I70189)
  • Zwiększono wartość minSdkVersion z 19 do 21. (Id7a43)

Wersja 1.12.0-alpha01

17 kwietnia 2024 r.

Zostanie wycofaneandroidx.webkit:webkit:1.12.0-alpha01 Wersja 1.12.0-alpha01 zawiera te zmiany.

Zmiany w interfejsie API

  • Dodano nowy interfejs API, który umożliwia uwierzytelnianie w internecieWebView. Developers. Użytkownicy mogą włączać i wyłączać wywołania WebAuthnWebView w swoich aplikacjach za pomocą WebSettingsCompat#setWebAuthenticationSupport. (I8187f)

Wersja 1.11

Wersja 1.11.0

1 maja 2024 r.

Zostanie wycofaneandroidx.webkit:webkit:1.11.0 Wersja 1.11.0 zawiera te zmiany.

Ważne zmiany od wersji 1.10.0

  • Umożliwia aplikacjom sterowanie odtwarzaniem dźwięku w WebView za pomocą nowych interfejsów API setAudioMutedisAudioMuted, które działają analogicznie do wyciszania karty w Chrome.
  • Wprowadzono URLUtilCompat, który obsługuje analizowanie nagłówków Content-Disposition używających atrybutu wartości zakodowanej filename* zgodnie z normą RFC 6266. Interfejs Compatibility API udostępnia też bezpośrednio metodę analizowania nagłówka Content-Disposition, gdy sugerowana nazwa pliku na podstawie adresu URL i typu MIME nie jest pożądana.

Wersja 1.11.0-rc01

3 kwietnia 2024 r.

Zostanie wycofaneandroidx.webkit:webkit:1.11.0-rc01 Ta wersja nie zawiera zmian w porównaniu z wersją 1.11.0-beta01.

Wersja 1.11.0-beta01

20 marca 2024 r.

androidx.webkit:webkit:1.11.0-beta01 została wydana bez znaczących zmian. Wersja 1.11.0-beta01 zawiera te zmiany.

Wersja 1.11.0-alpha02

21 lutego 2024 r.

Zostanie wycofaneandroidx.webkit:webkit:1.11.0-alpha02 Wersja 1.11.0-alpha02 zawiera te zmiany.

Nowe funkcje

  • Dodaj metody setAudioMutedisAudioMuted do wyciszania (i wyłączania wyciszenia) WebViews. Ta metoda pozwala zapobiec odtwarzaniu dźwięku przez WebView. (Ie7a33)

Zmiany w interfejsie API

  • URLUtilCompat jest oznaczona jako finalna, ponieważ nie powinna być podklasą. (I49ec1)

Wersja 1.11.0-alpha01

7 lutego 2024 r.

Zostanie wycofaneandroidx.webkit:webkit:1.11.0-alpha01 Wersja 1.11.0-alpha01 zawiera te zmiany.

Nowe funkcje

  • Dodaj zgodność z URLUtil.guessFileName. Wersja zgodności w URLUtilCompat obsługuje analizowanie nagłówków Content-Disposition, które używają atrybutu zakodowanej wartości filename* zgodnie z definicją w RFC 6266. Interfejs Compatibility API udostępnia też bezpośrednio metodę analizowania nagłówka Content-Disposition, gdy sugerowana nazwa pliku na podstawie adresu URL i typu MIME nie jest pożądana. (If6ae7, b/309927164)

Wersja 1.10

Wersja 1.10.0

24 stycznia 2024 r.

Zostanie wycofaneandroidx.webkit:webkit:1.10.0 Wersja 1.10.0 zawiera te zmiany.

Ważne zmiany od wersji 1.9.0

Wersja 1.10.0-rc01

10 stycznia 2024 r.

Zostanie wycofaneandroidx.webkit:webkit:1.10.0-rc01 Ta wersja nie zawiera zmian w porównaniu z wersją 1.10.0-beta01.

Wersja 1.10.0-beta01

13 grudnia 2023 r.

Zostanie wycofaneandroidx.webkit:webkit:1.10.0-beta01 Wersja 1.10.0-beta01 zawiera te zmiany.

  • Brak zmian w funkcjonalności od 1.10.0-alpha01.

Wersja 1.10.0-alpha01

29 listopada 2023 r.

Zostanie wycofaneandroidx.webkit:webkit:1.10.0-alpha01 Wersja 1.10.0-alpha01 zawiera te zmiany.

Nowe funkcje

  • Dodaliśmy nowy interfejs API do WebSettingsCompat, aby kontrolować eksperymentalny interfejs Android WebView Media Integrity API. Możesz całkowicie wyłączyć ten interfejs API lub ograniczyć udostępnianie tożsamości aplikacji w odpowiedzi interfejsu API. Możesz włączyć lub wyłączyć tę opcję dla wszystkich źródeł lub dla poszczególnych źródeł.

Wersja 1.9

Wersja 1.9.0

29 listopada 2023 r.

Zostanie wycofaneandroidx.webkit:webkit:1.9.0 Wersja 1.9.0 zawiera te zmiany.

Ważne zmiany od wersji 1.8.0

  • Dodaliśmy nowy interfejs API obsługujący wiele profili w komponentach WebView.
  • Dodano interfejs API do wstrzykiwania i uruchamiania kodu JavaScript przed wczytaniem strony.
    • Interfejs WebViewCompat#addDocumentStartJavascript API umożliwia aplikacjom wstrzykiwanie skryptów do elementu WebView, które na pewno zostaną uruchomione przed wykonaniem jakichkolwiek skryptów na stronie. Interfejs API umożliwia aplikacji określenie docelowej listy źródeł, w których ma być włączony skrypt, dzięki czemu działa on tylko na odpowiednich stronach. W przeciwieństwie do metody WebView#evaluateJavascript ten interfejs API umożliwia wykonywanie skryptów w osadzonych elementach iframe po ich wczytaniu. Aplikacje mogą używać tego nowego interfejsu API w połączeniu z interfejsem WebViewCompat#addWebMessageListener, aby w niezawodny sposób skonfigurować dwukierunkową komunikację z kodem JavaScript na stronie.
  • Dodano interfejsy API, które umożliwiają modyfikowanie sposobu rejestrowania zdarzeń raportowania atrybucji w Piaskownicy prywatności.
    • Wprowadziliśmy nowy interfejs API WebSettingsCompat#setAttributionRegistrationBehavior, który umożliwia deweloperom skonfigurowanie, czy źródła i zdarzenia wywołujące atrybucję są rejestrowane jako pochodzące z samej aplikacji, czy z treści internetowych w widoku WebView. Tej metody można też użyć do wyłączenia raportowania atrybucji w WebView. Dodaliśmy też nowy interfejs API WebSettingsCompat#getAttributionRegistrationBehavior, który umożliwia uzyskanie bieżącego sposobu działania.
    • Więcej informacji znajdziesz w dokumentacji Piaskownicy prywatności.
  • Dodano interfejsy API do zastępowania metadanych klienta użytkownika w przypadku wskazówek dotyczących klienta.
    • Wprowadziliśmy nowy interfejs API WebSettingsCompat#setUserAgentMetadata, który umożliwia zastępowanie metadanych agenta użytkownika w WebView używanych do wypełniania wskazówek klienta agenta użytkownika. Dodaliśmy też kolejny nowy interfejs API WebSettingsCompat#getUserAgentMetadata, który pozwala pobierać bieżące zastąpienia agenta użytkownika. Zachęcamy aplikacje do korzystania z nowego interfejsu API, aby ustawiać odpowiednie wartości zastąpienia za każdym razem, gdy aplikacja zmienia domyślny ciąg tekstowy agenta użytkownika za pomocą funkcji WebSettings.setUserAgentString. Dzięki temu w każdej sytuacji będą używane prawidłowe wartości.

Wersja 1.9.0-rc01

15 listopada 2023 r.

Zostanie wycofaneandroidx.webkit:webkit:1.9.0-rc01 Ta wersja nie zawiera zmian w porównaniu z wersją 1.9.0-beta01.

Wersja 1.9.0-beta01

1 listopada 2023 roku

Zostanie wycofaneandroidx.webkit:webkit:1.9.0-beta01 Wersja 1.9.0-beta01 zawiera te zmiany.

Zmiany w interfejsie API

  • Rozwiązanie problemu z wartościami null w interfejsie User-Agent Metadata API. Aktualizujemy klasę BrandVersion, aby używała wzorca konstruktora, i zapewniamy spójność wartości null w metodach pobierających i ustawiających klasy UserAgentMetadata. (Ibf195)
  • Dodawanie adnotacji do ProfileStore, WebViewCompat#setProfileWebViewCompat.getProfile za pomocą @UiThread. (I499b2)

Wersja 1.9.0-alpha01

18 października 2023 r.

Zostanie wycofaneandroidx.webkit:webkit:1.9.0-alpha01 Wersja 1.9.0-alpha01 zawiera te zmiany.

Nowe funkcje

  • Dodaliśmy interfejs API wielu profili, który umożliwia prowadzenie oddzielnych sesji przeglądania w WebViews.Każdy profil ma własne dane (np. pliki cookie). Możesz tworzyć profile, przypisywać je do instancji WebView i później pobierać w celu uzyskania dostępu do danych. Klasa singleton ProfileStore pomaga zarządzać profilami przez tworzenie lub usuwanie za pomocą interfejsów API: getOrCreateProfile, getProfile, getAllProfileNamesdeleteProfile. Klasa Profile będzie miała różne interfejsy API, za pomocą których można pobierać powiązane z tym profilem dane, takie jak nazwa, GeoLocationPermissions, ServiceWorkerController, CookieManagerWebStorage. Każdy WebView będzie domyślnie działać z profilem domyślnym, ale możesz to zmienić za pomocą WebViewCompat#setProfile. Profil WebView można pobrać za pomocą WebViewCompat#getProfile. (I32d22)
  • Dodaj interfejsy API, aby modyfikować sposób rejestrowania zdarzeń interfejsu Attribution Reporting API. Wprowadziliśmy nowy interfejs API WebSettingsCompat#setAttributionRegistrationBehavior, który umożliwia deweloperom konfigurowanie, czy źródła i reguły są rejestrowane jako pochodzące z samej aplikacji, czy z treści internetowych w WebView. Tej metody można też użyć, aby wyłączyć raportowanie atrybucji w usłudze WebView. Dodaliśmy też nowy interfejs API WebSettingsCompat#getAttributionRegistrationBehavior, który umożliwia uzyskanie bieżącego sposobu 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 umożliwia zastępowanie metadanych agenta użytkownika w komponencie WebView, który jest używany do wypełniania wskazówek klienta agenta użytkownika. Dodaliśmy też kolejny nowy interfejs API WebSettingsCompat#getUserAgentMetadata, który umożliwia uzyskiwanie bieżących zastąpień agenta użytkownika. Zachęcamy aplikacje do korzystania z nowego interfejsu API, aby ustawiać odpowiednie wartości zastępowania, zamiast polegać na zmianie ciągu User-Agent. (I74500)
  • Dodaj interfejs API do wstrzykiwania kodu JavaScript, który będzie uruchamiany podczas wczytywania strony. Interfejs WebViewCompat.addDocumentStartJavascript API umożliwia aplikacjom wstrzykiwanie skryptów do komponentu WebView, które będą wykonywane przed skryptami strony. Interfejs API umożliwia aplikacji określenie docelowej listy źródeł, w których ma być włączony skrypt, dzięki czemu działa on tylko na odpowiednich stronach. W przeciwieństwie do interfejsu WebView.evaluateJavascript ten interfejs API umożliwia wykonywanie skryptów w osadzonych elementach iframe po ich wczytaniu. (Ide063)

Wersja 1.8

Wersja 1.8.0

6 września 2023 r.

Zostanie wycofaneandroidx.webkit:webkit:1.8.0 Wersja 1.8.0 zawiera te zmiany.

Ważne zmiany od wersji 1.7.0

Wersja 1.8.0-rc01

9 sierpnia 2023 r.

androidx.webkit:webkit:1.8.0-rc01 zostaje opublikowany bez zmian od 1.8.0-beta01. Wersja 1.8.0-rc01 zawiera te zmiany.

Wersja 1.8.0-beta01

26 lipca 2023 r.

androidx.webkit:webkit:1.8.0-beta01 zostaje opublikowany bez zmian od 1.8.0-alpha01. Wersja 1.8.0-beta01 zawiera te zmiany.

Wersja 1.8.0-alpha01

7 czerwca 2023 r.

Zostanie wycofaneandroidx.webkit:webkit:1.8.0-alpha01 Wersja 1.8.0-alpha01 zawiera te zmiany.

Zmiany w interfejsie API

  • Zapoznaj się z sekcją Wkład zewnętrzny.

Wkład zewnętrzny

  • Dodaj obsługę przekazywania ArrayBuffer przez WebMessagePortCompat#postMessage, JsReplyProxy#postMessageWebViewCompat#postWebMessage, odbierania ArrayBuffer z JavaScriptu przez WebMessagePortCompatWebMessageListener oraz odbierania przenośnych ArrayBuffer z JavaScriptu przez WebMessagePortCompat. Pamiętaj, że ten interfejs API będzie dostępny tylko w WebView w wersji 116. (Ie7567, b/251152171)

Wersja 1.7

Wersja 1.7.0

24 maja 2023 r.

Zostanie wycofaneandroidx.webkit:webkit:1.7.0 Wersja 1.7.0 zawiera te zmiany.

Ważne zmiany od wersji 1.6.0

  • Dodaliśmy obsługę przeciągania obrazówWebView. Możesz umożliwić użytkownikom przeciąganie obrazów z WebView, dodając nowy element DropDataContentProvider do pliku manifestu aplikacji zgodnie z opisem w dokumentacji klasy.
  • Dodaliśmy interfejs ProcessGlobalConfig#setDirectoryBasePaths(Context,File,File) API, który umożliwia ustawianie katalogów podstawowych, z których WebView będzie korzystać w bieżącym procesie. Podobnie jak w przypadku wszystkich metod w ProcessGlobalConfig, tę metodę należy wywołać przed utworzeniem pierwszej instancji WebView. Ta metoda została dodana, aby umożliwić platformie Android dostosowywanie ustawień WebView. W przypadku aplikacji ogólnego przeznaczenia nie zalecamy korzystania z tej metody.

Wersja 1.7.0-rc01

10 maja 2023 r.

androidx.webkit:webkit:1.7.0-rc01 zostaje opublikowany bez zmian od 1.7.0-beta01. Wersja 1.7.0-rc01 zawiera te zmiany.

Wersja 1.7.0-beta01

5 kwietnia 2023 r.

Zostanie wycofaneandroidx.webkit:webkit:1.7.0-beta01 Wersja 1.7.0-beta01 zawiera te zmiany.

Zmiany w interfejsie API

  • Drobna zmiana flagi funkcji i nazwy metody oraz zmiana typu argumentu funkcji setDirectoryBasePaths() z String na File (Ib0d0a)

Wersja 1.7.0-alpha03

8 marca 2023 r.

Zostanie wycofaneandroidx.webkit:webkit:1.7.0-alpha03 Wersja 1.7.0-alpha03 zawiera te zmiany.

Zmiany w interfejsie API

  • Dodaj interfejs ProcessGlobalConfig#setDirectoryBasePath(String, String) API, którego można używać do ustawiania katalogów podstawowych, z których WebView będzie korzystać w bieżącym procesie. (Ibd1a1, b/250553687)

Poprawki błędów

  • Naprawianie nieprawidłowej reguły ProGuard powodującej błędy kompilacji podczas korzystania z DexGuard (Ia65c2, b/270034835)

Wersja 1.7.0-alpha02

8 lutego 2023 r.

Zostanie wycofaneandroidx.webkit:webkit:1.7.0-alpha02 Wersja 1.7.0-alpha02 zawiera te zmiany.

Poprawki błędów

  • Błędy w dokumentacji usługi DropDataContentProvider.

Wersja 1.7.0-alpha01

25 stycznia 2023 r.

Zostanie wycofaneandroidx.webkit:webkit:1.7.0-alpha01 Wersja 1.7.0-alpha01 zawiera te zmiany.

Nowe funkcje

  • Dodajemy obsługę przeciągania obrazówWebView. Możesz umożliwić użytkownikom przeciąganie obrazów z WebView, dodając nowy element DropDataContentProvider do pliku manifestu aplikacji. (05a1a6)

Wersja 1.6

Wersja 1.6.1

22 marca 2023 r.

Zostanie wycofaneandroidx.webkit:webkit:1.6.1 Wersja 1.6.1 zawiera te zmiany.

Poprawki błędów

  • Naprawianie błędu analizy ProGuard (Ia65c2)

Wersja 1.6.0

25 stycznia 2023 r.

Zostanie wycofaneandroidx.webkit:webkit:1.6.0 Wersja 1.6.0 zawiera te zmiany.

Ważne zmiany od wersji 1.5.0

  • Dodaliśmy nowy interfejs API ProcessGlobalConfig, który umożliwia aplikacjom podawanie ustawień konfiguracji, które muszą zostać ustawione przed załadowaniem komponentu WebView, np. sufiksu katalogu danych WebView. Konfigurację należy ustawić i zastosować jak najwcześniej podczas uruchamiania aplikacji, aby mieć pewność, że nastąpi to przed wywołaniem przez jakikolwiek inny wątek metody, która wczytuje WebView do procesu.
  • Dodaliśmy nowy interfejs API CookieManagerCompat, aby rozszerzyć android.webkit.CookieManager o nową metodę getCookieInfo, która pobiera wszystkie atrybuty wszystkich plików cookie ustawionych w określonym adresie URL. Różni się od obecnego interfejsu API getCookie w CookieManager, który zwraca tylko atrybuty nazwy i wartości plików cookie.
  • WebSettingsCompat ma nowe metody włączania i wyłączania efektu EnterpriseAuthenticationAppLinkPolicy, jeśli został on ustawiony przez administratora w WebView, oraz pobierania bieżącego ustawienia. Ta funkcja umożliwia komponentowi WebView otwieranie aplikacji uwierzytelniającej zamiast adresu URL uwierzytelniania. Ta funkcja nie ma wpływu na urządzenia, którymi nie zarządza zasada firmowa.
  • Dodanie nowego interfejsu API do WebSettingsCompat, aby umożliwić aplikacjom jawne wysyłanie nazwy pakietu aplikacji w nagłówku X-Requested-With do punktów początkowych z listy dozwolonych. Nagłówek był tradycyjnie wysyłany w każdym żądaniu z WebView.

Wersja 1.6.0-rc01

11 stycznia 2023 r.

Zostanie wycofaneandroidx.webkit:webkit:1.6.0-rc01 Wersja 1.6.0-rc01 zawiera te zmiany.

Poprawki błędów

  • Naprawiono NullPointerExceptionWebViewFeature.isStartupFeatureSupported(Context, String) podczas działania na pakiecie SDK w wersji starszej niż L. (Ic7292)

Wersja 1.6.0-beta01

7 grudnia 2022 r.

Zostanie wycofaneandroidx.webkit:webkit:1.6.0-beta01 Wersja 1.6.0-beta01 zawiera te zmiany.

Zmiany w interfejsie API

  • ProcessGlobalConfig zostało zmienione tak, aby używać zwykłego konstruktora i statycznej metody apply. Metodę apply należy wywoływać tylko raz w procesie, jak najwcześniej. Jeśli zostanie wywołana więcej niż raz, zgłosi wyjątek IllegalStateException. ProcessGlobalConfig obiekty nie mają już żadnych ograniczeń co do liczby wywołań setterów. (I456c3)

Wersja 1.6.0-alpha03

9 listopada 2022 r.

Zostanie wycofaneandroidx.webkit:webkit:1.6.0-alpha03 Wersja 1.6.0-alpha03 zawiera te zmiany.

Nowe funkcje

  • Dodaj klasę ProcessGlobalConfig, która umożliwia użytkownikom ustawienie globalnej konfiguracji procesu przed załadowaniem WebView. WebView ma pewne parametry konfiguracji globalnej procesu, których nie można zmienić po załadowaniu WebView (np. katalog danych WebView). Ta klasa umożliwia aplikacjom ustawianie tych parametrów. Konfigurację należy ustawić i zastosować jak najwcześniej podczas uruchamiania aplikacji, aby mieć pewność, że nastąpi to przed wywołaniem przez jakikolwiek inny wątek metody, która wczytuje WebView do procesu. (I7c0e0, b/250553687)
  • Dodanie nowego interfejsu API, który umożliwia aplikacjom jawne wysyłanie nazwy pakietu aplikacji w nagłówku X-Requested-With do dozwolonych punktów początkowych. Nagłówek był tradycyjnie wysyłany w każdym żądaniu z WebView. (I0adfe, b/226552535)

Zmiany w interfejsie API

  • Interfejs WebSettingsCompat#setAlgorithmicDarkeningAllowed API jest obsługiwany we wszystkich wersjach Androida w WebView wersji 105 i nowszych. Wcześniejsze wersje WebView obsługiwały interfejs API tylko na urządzeniach z Androidem Q i nowszymi. 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.

Zostanie wycofaneandroidx.webkit:webkit:1.6.0-alpha02 Wersja 1.6.0-alpha02 zawiera te zmiany.

Nowe funkcje

  • Dodaje nową klasę CookieManagerCompat wraz z interfejsem API getCookieInfo, który pobiera wszystkie atrybuty wszystkich plików cookie ustawionych w określonym adresie URL. Różni się on od istniejącego interfejsu getCookie API w CookieManager, który zwraca tylko atrybuty nazwy i wartości plików cookie. (I07365, b/242161756)

Wersja 1.6.0-alpha01

24 sierpnia 2022 r.

Zostanie wycofaneandroidx.webkit:webkit:1.6.0-alpha01 Wersja 1.6.0-alpha01 zawiera te zmiany.

Nowe funkcje

  • Dodano interfejsy API w WebSettingsCompat, aby włączać i wyłączać efekt EnterpriseAuthenticationAppLinkPolicy, jeśli został ustawiony przez administratora w WebView. Ta funkcja umożliwia komponentowi WebView otwieranie aplikacji uwierzytelniającej zamiast adresu URL uwierzytelniania. Ta funkcja nie ma wpływu na urządzenia, którymi nie zarządza zasada firmowa.

Wersja 1.5.0

Wersja 1.5.0

24 sierpnia 2022 r.

Zostanie wycofaneandroidx.webkit:webkit:1.5.0 Wersja 1.5.0 zawiera te zmiany.

Ważne zmiany od wersji 1.4.0

  • Nowy interfejs API setAlgorithmicDarkeningAllowed na WebSettingsCompat zastępuje stare interfejsy API setForceDarksetForceDarkStrategy. Aplikacje kierowane na pakiet SDK w wersji 33 lub nowszej (T) powinny korzystać z nowego interfejsu API, ponieważ stary interfejs API nie będzie już w nich działać.
  • Listę dozwolonych adresów URL, które mają korzystać ze skonfigurowanego serwera proxy, można teraz ustawić za pomocą ProxyCofig.Builder, ustawiając setReverseBypassEnabled na true. Gdy to ustawienie jest aktywne, wszystkie inne adresy URL będą pomijać skonfigurowany serwer proxy.

Wersja 1.5.0-rc01

10 sierpnia 2022 r.

androidx.webkit:webkit:1.5.0-rc01 zostaje opublikowany bez zmian od 1.5.0-beta01. Wersja 1.5.0-rc01 zawiera te zmiany.

Wersja 1.5.0-beta01

29 czerwca 2022 r.

Zostanie wycofaneandroidx.webkit:webkit:1.5.0-beta01 Wersja 1.5.0-beta01 zawiera te zmiany.

Zmiany w interfejsie API

  • Interfejsy API związane z algorytmicznym przyciemnianiem są teraz oznaczone jako wymagające poziomu API Q. Interfejs API nie będzie miał wpływu na poziomy API < Q, ponieważ na tych urządzeniach nie ma opcji motywu ciemnego. (I0905e)

Wersja 1.5.0-alpha01

18 maja 2022 r.

Zostanie wycofaneandroidx.webkit:webkit:1.5.0-alpha01 Wersja 1.5.0-alpha01 zawiera te zmiany.

Nowe funkcje

  • Dodaj nową metodę getVariationsHeader()WebViewCompat, aby uzyskać wartość nagłówka X-Client-Data wysyłaną przez WebView. Zwrócona wartość będzie zakodowanym w formacie Base64 buforem protokołu ClientVariations.
  • Dodaj interfejsy API na WebSettingsCompat, aby zezwolić na algorytmiczne przyciemnianie w przypadku aplikacji z targetSdk >= 33 lub na nie zezwolić. (I29597)

Zmiany w interfejsie API

  • Dodaj nową metodę w ProxyCofig.Builder, aby ustawić obejście zwrotne. Ustawienie wartości „true” w przypadku opcji „reverse bypass” oznacza, że tylko adresy URL na liście pomijania będą korzystać z ustawień serwera proxy. (I9eaa2, b/168728599)

Poprawki błędów

  • Poprawiliśmy błąd w dokumentacji ciemnego motywu. (I36ebf, b/194343633)
  • Naprawiliśmy błąd, który powodował, że 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

Zostanie wycofaneandroidx.webkit:webkit:1.4.0 Wersja 1.4.0 zawiera te zmiany.

Główne zmiany od wersji 1.3.0

  • Dodano nowy interfejs API setSafeBrowsingAllowlist(), który zastępuje interfejs setSafeBrowsingWhitelist(). Dzięki temu aplikacje mogą aktualizować swój kod, aby unikać terminologii wykluczającej, a jednocześnie obsługiwać ten sam zakres pakietów SDK Androida i wersji komponentu WebView co wycofany interfejs API.
  • Naprawiliśmy błąd w funkcji setProxyOverride, który powodował nieprawidłowe stosowanie reguł rezerwowych.

Wersja 1.4.0-rc02

2 grudnia 2020 r.

Zostanie wycofaneandroidx.webkit:webkit:1.4.0-rc02 Wersja 1.4.0-rc02 zawiera te zmiany.

Poprawki błędów

  • Naprawia problem z nieprawidłowym stosowaniem reguł rezerwowych podczas korzystania z funkcji setProxyOverride.

Wersja 1.4.0-rc01

11 listopada 2020 roku

androidx.webkit:webkit:1.4.0-rc01 zostaje opublikowany bez zmian od 1.4.0-beta01. Wersja 1.4.0-rc01 zawiera te zmiany.

Wersja 1.4.0-beta01

14 października 2020 r.

androidx.webkit:webkit:1.4.0-beta01 zostaje opublikowany bez zmian od 1.4.0-alpha01. Wersja 1.4.0-beta01 zawiera te zmiany.

Wersja 1.4.0-alpha01

16 września 2020 roku

Zostanie wycofaneandroidx.webkit:webkit:1.4.0-alpha01 Wersja 1.4.0-alpha01 zawiera te zmiany.

Zmiany w interfejsie API

  • Dodano nowy interfejs API WebViewCompat#setSafeBrowsingAllowlist(), który zastępuje setSafeBrowsingWhitelist(). Dzięki temu aplikacje mogą zaktualizować swój kod, aby uniknąć terminologii wykluczającej, a jednocześnie obsługiwać ten sam zakres pakietów SDK Androida i wersji komponentu WebView co wycofany interfejs API. (I8d65d)

Wersja 1.3.0

Wersja 1.3.0

19 sierpnia 2020 r.

Zostanie wycofaneandroidx.webkit:webkit:1.3.0 Wersja 1.3.0 zawiera te zmiany.

Główne zmiany od wersji 1.2.0

  • Interfejs ForceDarkStrategy API zapewnia większą kontrolę nad przyciemnianiem WebView (przyciemnianie treści CSS/webowych 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ą osadzającą WebView.
  • isMultiProcessEnabled Interfejs API do sprawdzania, czy WebView działa w wielu procesach. Jest to możliwe od Androida O. Oznacza to, że treści internetowe są renderowane w procesie renderowania w piaskownicy, który jest oddzielony od procesu aplikacji. Ten renderowanie w piaskownicy może być udostępniany innym widokom WebView w tej samej aplikacji, ale nie jest udostępniany innym procesom aplikacji.

Wersja 1.3.0-rc02

5 sierpnia 2020 r.

Zostanie wycofaneandroidx.webkit:webkit:1.3.0-rc02 Wersja 1.3.0-rc02 zawiera te zmiany.

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 była uruchamiana za pomocą funkcji natychmiastowego uruchamiania w Android Studio.

Wersja 1.3.0-rc01

24 czerwca 2020 r.

androidx.webkit:webkit:1.3.0-rc01 zostaje opublikowany bez zmian od 1.3.0-beta01. Wersja 1.3.0-rc01 zawiera te zmiany.

Wersja 1.3.0-beta01

10 czerwca 2020 r.

Zostanie wycofaneandroidx.webkit:webkit:1.3.0-beta01 Wersja 1.3.0-beta01 zawiera te zmiany.

Nowe funkcje

  • ForceDarkStrategy Interfejs API do kontrolowania przyciemniania widoku WebView (przyciemnianie treści CSS/webowych a przyciemnianie automatyczne).
  • WebMessageListener Interfejsy API zapewniają prosty i bezpieczny mechanizm nawiązywania komunikacji między treściami internetowymi a aplikacją osadzającą WebView.
  • MultiProcessEnabled Interfejs API do sprawdzania, czy WebView działa w trybie wieloprocesowym.

Wersja 1.3.0-alpha03

27 maja 2020 r.

Zostanie wycofaneandroidx.webkit:webkit:1.3.0-alpha03 Wersja 1.3.0-alpha03 zawiera te zmiany.

Zmiany w interfejsie API

  • addWebMessageListener otrzymuje teraz Set<String> reguł dozwolonych źródeł (wcześniej List<String>).

Wersja 1.3.0-alpha02

29 kwietnia 2020 r.

Zostanie wycofaneandroidx.webkit:webkit:1.3.0-alpha02 Wersja 1.3.0-alpha02 zawiera te zmiany.

Nowe funkcje

  • MultiProcessEnabled API, aby sprawdzić, czy WebView działa w trybie wieloprocesowym.

Zmiany w interfejsie API

  • Wszystkie stałe strategii ciemnych mają teraz przedrostek DARK_STRATEGY.

Wersja 1.3.0-alpha01

15 kwietnia 2020 roku

Zostanie wycofaneandroidx.webkit:webkit:1.3.0-alpha01 Wersja 1.3.0-alpha01 zawiera te zmiany.

Nowe funkcje

  • ForceDarkStrategy Interfejs API do kontrolowania WebView przyciemniania (przyciemnianie treści CSS/internetowych a przyciemnianie automatyczne).
  • WebMessageListener Interfejsy API zapewniają prosty i bezpieczny mechanizm nawiązywania komunikacji między treściami internetowymi a aplikacją osadzającą WebView.

Wersja 1.2.0

Wersja 1.2.0

4 marca 2020 r.

Zostanie wycofaneandroidx.webkit:webkit:1.2.0 Wersja 1.2.0 zawiera te zmiany.

Główne zmiany od wersji 1.1.0

  • Dodano interfejs ForceDark API, który umożliwia określanie, czy widoki WebView mają być renderowane w trybie ciemnym.

Wersja 1.2.0-rc01

19 lutego 2020 r.

androidx.webkit:webkit:1.2.0-rc01 zostaje opublikowany bez zmian od 1.2.0-beta01. Wersja 1.2.0-rc01 zawiera te zmiany.

Wersja 1.2.0-beta01

5 lutego 2020 r.

androidx.webkit:webkit:1.2.0-beta01 zostaje opublikowany bez zmian od 1.2.0-alpha01. Wersja 1.2.0-beta01 zawiera te zmiany.

Wersja 1.2.0-alpha01

18 grudnia 2019 r.

Zostanie wycofaneandroidx.webkit:webkit:1.2.0-alpha01 Wersja 1.2.0-alpha01 zawiera te zmiany.

Nowe funkcje

  • Interfejs ForceDark API umożliwia określenie, czy komponenty WebView mają być renderowane w trybie ciemnym.

Wersja 1.1.0

Wersja 1.1.0

7 listopada 2019 r.

Zostanie wycofaneandroidx.webkit:webkit:1.1.0 Wersja 1.1.0 zawiera te zmiany.

Ważne zmiany od wersji 1.0.0

  • Interfejsy API typu getter uzupełniające funkcje setWebViewClient()setWebChromeClient().
  • Interfejs ProxyController API do ustawiania serwera proxy żądania sieciowego dla widoków WebView aplikacji.
  • Interfejs WebViewAssetLoader API, który upraszcza wczytywanie zasobów APK, zasobów i plików z katalogu danych aplikacji przez przechwytywanie żądań. Umożliwia to dostęp do zasobów internetowych i lokalnych bez wyłączania CORS.
  • interfejsu TracingController API do zbierania informacji o śledzeniu WebView na potrzeby debugowania;
  • Interfejsy RenderProcess API do zarządzania usługami renderowania WebView i wykrywania, kiedy nieprawidłowo działające treści powodują, że renderowanie WebView przestaje odpowiadać.
  • Zaktualizowano istniejące interfejsy API, aby uwzględnić adnotacje dotyczące możliwości przyjmowania wartości null (@NonNull, @Nullable) i wątków (@UiThread, @WorkerThread).

Wersja 1.1.0-rc01

9 października 2019 r.

Zostanie wycofaneandroidx.webkit:webkit:1.1.0-rc01 Wersja 1.1.0-rc01 zawiera te zmiany.

Poprawki błędów

  • Rozwiązaliśmy problem, który powodował, że funkcja setWebViewRenderProcessClient() mogła ulec awarii, jeśli przekazano do niej klienta o wartości null.

Wersja 1.1.0-beta01

5 września 2019 r.

Zostanie wycofaneandroidx.webkit:webkit:1.1.0-beta01 Listę zmian w tej wersji znajdziesz tutaj.

Nowe funkcje

  • Nowa funkcja InternalStoragePathHandlerWebViewAssetLoader do wczytywania plików z katalogu danych aplikacji.

Zmiany w interfejsie API

  • ProxyConfig#getProxyRules() zwraca teraz niemodyfikowalną listę instancji ProxyRule, która jest nową klasą przechowującą filtr schematu i odpowiadający mu adres URL serwera proxy.

Poprawki błędów

  • WebViewAssetLoader domyślnie ustawia typ MIME „text/plain” (zamiast wartości null), gdy 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-alpha02

7 sierpnia 2019 r.

Zostanie wycofaneandroidx.webkit:webkit:1.1.0-alpha02 Listę zmian w tej wersji znajdziesz tutaj.

Nowe funkcje

  • WebViewAssetLoader udostępnia interfejs PathHandler, który umożliwia aplikacjom tworzenie niestandardowych funkcji obsługi ścieżek.

Zmiany w interfejsie API

  • WebViewAssetLoader jest teraz klasą ostateczną, ponieważ nie jest przeznaczona do tworzenia podklas.
  • Implementacje WebViewAssetLoader#PathHandler są już publiczne i ostateczne.
  • Niewielkie zmiany w nazwach metod ProxyConfig.
  • ProxyController: dodano nowe metody addDirect()addDirect(String) do bezpośredniego łączenia się z serwerami; usunięto ciąg DIRECT.
  • Zaktualizowano istniejące interfejsy API, aby uwzględnić adnotacje dotyczące możliwości przyjmowania wartości null (@NonNull, @Nullable) i wątków (@UiThread, @WorkerThread).

Wersja 1.1.0-alpha01

7 maja 2019 r.

Zostanie wycofaneandroidx.webkit:webkit:1.1.0-alpha01 Listę zmian w tej wersji znajdziesz tutaj.

Nowe funkcje

  • Interfejsy API typu getter uzupełniające interfejsy setWebViewClient()setWebChromeClient()
  • Interfejs ProxyController API do ustawiania serwera proxy żądania sieciowego dla widoków WebView aplikacji.
  • Interfejs AssetLoader API, który upraszcza wczytywanie zasobów i plików APK przez przechwytywanie żądań, umożliwiając dostęp do zasobów internetowych bez wyłączania CORS.
  • interfejsu TracingController API do zbierania informacji o śledzeniu WebView na potrzeby debugowania;
  • Interfejsy RenderProcess API do zarządzania usługami renderowania WebView i wykrywania, kiedy nieprawidłowo działające treści powodują, że renderowanie WebView przestaje odpowiadać.

Poprawki błędów

  • Drobne poprawki formatowania dokumentacji istniejących interfejsów API.