JavascriptEngine

  
Umożliw aplikacji na Androida interpretowanie kodu JavaScript.
Ostatnia aktualizacja Wersja stabilna Wersja kandydująca Wersja Beta Wersja alfa
26 marca 2025 r. - 1.0.0-rc01 - -

Deklarowanie zależności

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

Dodaj zależności dla artefaktów, których potrzebujesz, w pliku build.gradle aplikacji lub modułu:

Odlotowe

dependencies {
    implementation "androidx.javascriptengine:javascriptengine:1.0.0-rc01"
}

Kotlin

dependencies {
    implementation("androidx.javascriptengine:javascriptengine:1.0.0-rc01")
}

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 zauważysz nowe problemy lub masz pomysły na ulepszenie tej biblioteki, daj nam znać. Zanim utworzysz nowy problem, zapoznaj się z dotychczasowymi problemami w tej bibliotece. Możesz zagłosować na istniejący problem, klikając przycisk z gwiazdką.

Tworzenie nowego zgłoszenia

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

Wersja 1.0

Wersja 1.0.0-rc01

26 marca 2025 r.

androidx.javascriptengine:javascriptengine:1.0.0-rc01 jest udostępniana bez istotnych zmian od ostatniej wersji beta. Wersja 1.0.0-rc01 zawiera te zatwierdzenia.

Wersja 1.0.0-beta01

1 listopada 2023 roku

androidx.javascriptengine:javascriptengine:1.0.0-beta01 nie zawiera żadnych istotnych zmian od ostatniej wersji alfa. Wersja 1.0.0-beta01 zawiera te commity.

Wersja 1.0.0-alpha07

18 października 2023 r.

androidx.javascriptengine:javascriptengine:1.0.0-alpha07 został zwolniony. Wersja 1.0.0-alpha07 zawiera te commity.

Nowe funkcje

  • Wprowadziliśmy nowy interfejs API, który pozwala aplikacjom rejestrować wywołania zwrotne na potrzeby obsługi izolowanych awarii.

Zmiany w interfejsie API

  • Zmień nazwę DEFAULT_MAX_HEAP_SIZE na AUTOMATIC_MAX_HEAP_SIZE. (I6d303)
  • Zmień nazwę FileDescriptorIoException na DataInputException. (Iba4eb)
  • Zmień nazwę DEFAULT_ISOLATE_HEAP_SIZE na DEFAULT_MAX_HEAP_SIZE. (Iaa16f)
  • Usuń niedziałające metody getSourcegetTrace konsoli. (I4b7a2)
  • Odkryj FileDescriptorIoException (Ic44e6)
  • Zezwalanie aplikacjom na rejestrowanie wywołań zwrotnych w celu obsługi izolowanych awarii. (Iad25f)

Wersja 1.0.0-alpha06

4 października 2023 roku

androidx.javascriptengine:javascriptengine:1.0.0-alpha06 został zwolniony. Wersja 1.0.0-alpha06 zawiera te commity.

Nowe funkcje

  • Wprowadziliśmy nowy interfejs API do oceny kodu JavaScript z ParcelFileDescriptor/AssetFileDescriptor bez konieczności konwertowania źródła na ciąg znaków. Klasa JavaScriptIsolate jest odporna na wątki.

Zmiany w interfejsie API

  • Zmień provideNamedData tak, aby wyjątek był wyrzucany zamiast zwracania wartości false. (I8909a)
  • Dodawanie interfejsów API do oceny kodu JavaScript za pomocą Afds i Pfds (I03e3a)
  • Ustaw MemoryLimitExceededExceptionSandboxDeadException jako podklasę IsolateTerminatedException (Icf359)
  • Usuwanie publicznego interfejsu API evaluateJavaScriptAsync(@NonNull byte[] code) (I4b3ac)

Poprawki błędów

  • Upewnij się, że JavaScriptIsolate jest wątkowo bezpieczny. (Ib28e0)

Wersja 1.0.0-alpha05

5 kwietnia 2023 r.

androidx.javascriptengine:javascriptengine:1.0.0-alpha05 został zwolniony. Wersja 1.0.0-alpha05 zawiera te commity.

Zmiany w interfejsie API

  • Ocena i wynik nie są już ograniczone przez limity Binder (I13b1d)
  • Dodawanie wywołania zwrotnego do obsługi komunikatów konsoli izolowania (I11725, Ic1c11)

Wersja 1.0.0-alpha04

22 lutego 2023 roku

androidx.javascriptengine:javascriptengine:1.0.0-alpha04 został zwolniony. Wersja 1.0.0-alpha04 zawiera te commity.

Poprawki błędów

  • Rozwiązuje rzadki przypadek błędu NullPointerException spowodowanego przez zablokowanie procesu piaskownicy.

Wersja 1.0.0-alpha03

7 grudnia 2022 r.

androidx.javascriptengine:javascriptengine:1.0.0-alpha03 został zwolniony. Wersja 1.0.0-alpha03 zawiera te commity.

Nowe funkcje

  • ograniczyć awarie spowodowane brakiem pamięci do pojedynczego środowiska izolowanego zamiast do całego piaskownicy; Gdy izolowany fragment nie jest już w pamięci, nie można go wykorzystać do dalszej oceny.
  • Obecnie zasoby izolowanego środowiska nie są uwalniane, dopóki piaskownica nie zostanie zamknięta. To zachowanie może się zmienić w późniejszych wersjach biblioteki.

Zmiany w interfejsie API

  • Wywołaj MemoryLimitExceededException, gdy ocena prowadzi do wyizolowania braku pamięci.(I336ca)

Wersja 1.0.0-alpha02

5 października 2022 r.

androidx.javascriptengine:javascriptengine:1.0.0-alpha02 został zwolniony. Wersja 1.0.0-alpha02 zawiera te zatwierdzenia.

Nowe funkcje

  • Dodaj JavaScriptSandbox#isSupported, aby sprawdzić, czy system obsługuje piaskowni JavaScript.

Zmiany w interfejsie API

  • Wywołaj SandboxUnsupportedException, gdy nie można utworzyć JavaScriptSandbox z powodu braku obsługi przez system. (I0dcd6)

Wersja 1.0.0-alpha01

10 sierpnia 2022 r.

androidx.javascriptengine:javascriptengine:1.0.0-alpha01 został zwolniony. Wersja 1.0.0-alpha01 zawiera te commity.

Nowe funkcje

  • Dodaliśmy eksperymentalne wsparcie dla JavaScriptSandbox i JavaScriptIsolate, aby umożliwić klientom ocenę JavaScript w bezpiecznym i ograniczonym środowisku. Jest to obszar aktywnie rozwijany, a interfejsy API mogą ulec zmianie bez powiadomienia.

  • Prosimy o zgłaszanie próśb o dodanie funkcji i błędów w komponencie JavascriptEngine.