Webkit

Współpracuj z nowoczesnymi interfejsami API WebView na urządzeniach z Androidem 5 lub nowszym.
Najnowsza aktualizacja Wersja stabilna Kandydat do publikacji Wersja Beta Wersja alfa
17 kwietnia 2024 r. 1,9,0 1.11.0-rc01 - 1.12.0-alfa01

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:

Odlotowy

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.

Utwórz nowy numer

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

Wersja 1.12

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 interfejsie WebView w aplikacjach korzystających z WebSettingsCompat#setWebAuthenticationSupport. (I8187f)

Wersja 1.11

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 i isAudioMuted służące do ignorowania (i wyłączania) funkcji WebViews. Ta metoda uniemożliwi odtwarzanie dźwięku na urządzeniu WebView. (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 w URLUtilCompat obsługuje analizę nagłówków Content-Disposition, które używają atrybutu wartości zakodowanej filename* zgodnie z definicją w RFC 6266. Interfejs zgodności API bezpośrednio udostępnia też metodę analizowania nagłówka Content-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

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.
  • 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.
  • 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.
  • 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 klasy UserAgentMetadata są spójne. (Ibf195)
  • Dodaję adnotacje do ProfileStore, WebViewCompat#setProfile i WebViewCompat.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 do WebView instancji i pobierać je później na potrzeby dowolnego dostępu do danych. Dostępna jest jednorazowa klasa ProfileStore, która pomoże Ci zarządzać profilami przez ich tworzenie lub usuwanie za pomocą interfejsów API: getOrCreateProfile, getProfile, getAllProfileNames i deleteProfile. Klasa Profile 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 i WebStorage. Każdy zasób WebView będzie domyślnie uruchamiany z profilem domyślnym, ale możesz zmienić to ustawienie za pomocą opcji WebViewCompat#setProfile. Z tego powodu profil użytkownika WebView można pobrać za pomocą usługi WebViewCompat#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 interfejsie WebView. Tej metody można też używać do wyłączania raportów atrybucji w WebView. Dodatkowo dodaliśmy nowy interfejs API WebSettingsCompat#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 API WebSettingsCompat#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 interfejsu WebView.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

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 przez WebMessagePortCompat#postMessage, JsReplyProxy#postMessage i WebViewCompat#postWebMessage, odbierania ArrayBuffer z JavaScriptu za pośrednictwem WebMessagePortCompat i WebMessageListener oraz odbierania ArrayBuffer z JavaScriptu przez WebMessagePortCompat. Pamiętaj, że ten interfejs API będzie dostępny dopiero od WebView 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 z WebView, dodaj nowy tag DropDataContentProvider 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órych WebView będzie używać w bieżącym procesie. Tak jak w przypadku wszystkich metod w ProcessGlobalConfig, tę metodę należy wywołać przed utworzeniem wystąpienia pierwszego wystąpienia metody WebView. 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órych WebView 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 z DexGuard (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 z WebView do pliku manifestu aplikacji. Wystarczy, że dodasz do pliku manifestu nowy tag DropDataContentProvider. (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 w CookieManager, 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łania EnterpriseAuthenticationAppLinkPolicy, jeśli zostały ustawione przez administratora w domenie WebView, 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łówka X-Requested-With do źródeł z listy dozwolonych. Nagłówek był zwykle wysyłany przy każdym żądaniu z WebView.

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 tabeli WebViewFeature.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 funkcji IllegalStateException. Obiekty ProcessGlobalConfig 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 klasy WebView. WebView ma pewne parametry konfiguracji na poziomie globalnym procesu, których nie można zmienić po wczytaniu elementu WebView (np. katalog danych WebView). 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 procesie WebView. (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 w WebView w wersji 105 i nowszych. Poprzednie wersje WebView 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 API getCookieInfo, który pobiera wszystkie atrybuty ze wszystkich plików cookie ustawionych pod określonym adresem URL. Różni się to od obecnego interfejsu API getCookie w interfejsie CookieManager, 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 funkcji EnterpriseAuthenticationAppLinkPolicy, jeśli zostały ustawione przez administratora w regionie WebView. Dzięki tej funkcji 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.

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 w WebSettingsCompat zastępuje stare interfejsy API setForceDark i setForceDarkStrategy. 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ć, ustaw setReverseBypassEnabled na true. 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() w WebViewCompat, aby otrzymywać wartość nagłówka X-Client-Data wysłanego przez WebView. 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ł interfejs setSafeBrowsingWhitelist(). 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 teraz Set<String> reguł dozwolonych źródeł (wcześniej List<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 przyciemnienia 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.

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ądarce WebViewAssetLoader do wczytywania plików z katalogu danych aplikacji.

Zmiany w interfejsie API

  • ProxyConfig#getProxyRules() zwraca teraz listę instancji ProxyRule, 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łędu NullPointerException 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 interfejs PathHandler, 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 metody addDirect() i addDirect(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() i setWebChromeClient()
  • 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.