JavaScriptEngine

  
JavaScript-Auswertung in Ihrer Android-App aktivieren
Letzte Aktualisierung Stabile Release Releasekandidat Beta-Release Alpha-Release
23. September 2026 1.1.1 - - -

Abhängigkeiten deklarieren

Wenn Sie eine Abhängigkeit von JavaScriptEngine hinzufügen möchten, müssen Sie Ihrem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie unter Google-Repository bei Maven.

Fügen Sie die Abhängigkeiten für die benötigten Artefakte in der Datei build.gradle für Ihre App oder Ihr Modul hinzu:

Cool

dependencies {
    implementation "androidx.javascriptengine:javascriptengine:1.1.1"
}

Kotlin

dependencies {
    implementation("androidx.javascriptengine:javascriptengine:1.1.1")
}

Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.

Feedback

Ihr Feedback hilft uns, Jetpack zu verbessern. Wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben, lassen Sie es uns wissen. Bevor Sie ein neues Problem erstellen, sollten Sie sich jedoch die bereits gemeldeten Probleme in dieser Bibliothek ansehen. Wenn Sie sich einer Problemmeldung anschließen möchten, klicken Sie auf den Button mit dem Stern.

Neues Problem melden

Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.

JavaScriptEngine Version 1.1

Version 1.1.1

23. September 2026

androidx.javascriptengine:javascriptengine:1.1.1 ist veröffentlicht. Version 1.1.1 enthält diese Commits.

  • Entfernen Sie die direkte kotlin-stdlib-Abhängigkeit.
  • Fehler in JavaScriptSandbox.isSupported() behoben, der zu einem falschen Ergebnis geführt hat.

Version 1.1.0

6. Mai 2026

androidx.javascriptengine:javascriptengine:1.1.0 ist veröffentlicht. Version 1.1.0 enthält diese Commits.

Version 1.1.0-rc01

22. April 2026

androidx.javascriptengine:javascriptengine:1.1.0-rc01 ist veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.

Version 1.1.0-beta01

8. April 2026

androidx.javascriptengine:javascriptengine:1.1.0-beta01 ist veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.

Fehlerkorrekturen

  • Update von JavaScriptEngine auf Version 1.1.0-beta01 (I7b63b)

Version 1.1.0-alpha02

25. März 2026

androidx.javascriptengine:javascriptengine:1.1.0-alpha02 ist veröffentlicht. Version 1.1.0-alpha02 enthält diese Commits.

Neue Funktionen

  • Die Message Ports API wurde hinzugefügt, um eine symmetrische, flexible und ressourcenschonende Kommunikation mit JavaScript-Isolaten zu ermöglichen. So können Strings und ArrayBuffers gesendet und empfangen werden, ohne dass sie in Auswertungen oder benannte Daten-Blobs eingebettet werden müssen. (I04bc0, b/490128971)

Version 1.1.0-alpha01

11. März 2026

androidx.javascriptengine:javascriptengine:1.1.0-alpha01 ist veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.

Fehlerkorrekturen

  • Bibliotheken werden auf Java 11 umgestellt. Das bedeutet, dass der erstellte Bytecode Java 11 (Klassendateiversion 55) entspricht und möglicherweise Desugaring erfordert, um die Bibliothek zu verwenden (If4c2a, b/457821470).
  • In dieser Bibliothek werden jetzt JSpecify-Annotationen für Nullsicherheit verwendet, die typbezogen sind. Kotlin-Entwickler sollten das folgende Compiler-Argument verwenden, um die korrekte Verwendung zu erzwingen: -Xjspecify-annotations=strict (dies ist die Standardeinstellung ab Version 2.1.0 des Kotlin-Compilers) (Ieee48, b/326456246)

Version 1.0

Version 1.0.0

2. Juli 2025

androidx.javascriptengine:javascriptengine:1.0.0 wurde ohne nennenswerte Änderungen seit der letzten RC-Version veröffentlicht. Version 1.0.0 enthält diese Commits.

Version 1.0.0-rc01

26. März 2025

androidx.javascriptengine:javascriptengine:1.0.0-rc01 wurde ohne nennenswerte Änderungen seit der letzten Betaversion veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.

Version 1.0.0-beta01

1. November 2023

androidx.javascriptengine:javascriptengine:1.0.0-beta01 wurde ohne nennenswerte Änderungen seit der letzten Alphaversion veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.

Version 1.0.0-alpha07

18. Oktober 2023

androidx.javascriptengine:javascriptengine:1.0.0-alpha07 ist veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.

Neue Funktionen

  • Es wurde eine neue API eingeführt, mit der Apps Callbacks registrieren können, um Isolate-Abstürze zu verarbeiten.

API-Änderungen

  • Benenne DEFAULT_MAX_HEAP_SIZE in AUTOMATIC_MAX_HEAP_SIZE um. (I6d303)
  • Benenne FileDescriptorIoException in DataInputException um. (Iba4eb)
  • Benenne DEFAULT_ISOLATE_HEAP_SIZE in DEFAULT_MAX_HEAP_SIZE um. (Iaa16f)
  • Nicht funktionierende Konsolenmethoden getSource und getTrace entfernt. (I4b7a2)
  • FileDescriptorIoException einblenden (Ic44e6)
  • Ermöglicht Apps, Rückrufe zu registrieren, um Abstürze von Isolaten zu verarbeiten. (Iad25f)

Version 1.0.0-alpha06

4. Oktober 2023

androidx.javascriptengine:javascriptengine:1.0.0-alpha06 ist veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.

Neue Funktionen

  • Es wurde eine neue API eingeführt, mit der JavaScript aus einem ParcelFileDescriptor/AssetFileDescriptor ausgewertet werden kann, ohne dass die Quelle in einen String konvertiert werden muss. Die JavaScriptIsolate-Klasse ist threadsicher.

API-Änderungen

  • Ändern Sie provideNamedData so, dass eine Ausnahme ausgelöst wird, anstatt „false“ zurückzugeben. (I8909a)
  • Hinzufügen von APIs zum Auswerten von JavaScript über Afds und Pfds (I03e3a)
  • MemoryLimitExceededException und SandboxDeadException als Unterklasse von IsolateTerminatedException festlegen (Icf359)
  • Entfernen der öffentlichen API evaluateJavaScriptAsync(@NonNull byte[] code) (I4b3ac)

Fehlerkorrekturen

  • JavaScriptIsolate threadsicher machen (Ib28e0)

Version 1.0.0-alpha05

5. April 2023

androidx.javascriptengine:javascriptengine:1.0.0-alpha05 ist veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.

API-Änderungen

  • Bewertung und Ergebnis sind nicht mehr an Binder-Limits gebunden (I13b1d).
  • Callback zum Verarbeiten von Konsolennachrichten für Isolate hinzufügen (I11725, Ic1c11)

Version 1.0.0-alpha04

22. Februar 2023

androidx.javascriptengine:javascriptengine:1.0.0-alpha04 ist veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.

Fehlerkorrekturen

  • Behebt einen seltenen Fall von NullPointerException, der auftritt, wenn der Sandbox-Prozess beendet wird.

Version 1.0.0-alpha03

7. Dezember 2022

androidx.javascriptengine:javascriptengine:1.0.0-alpha03 ist veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.

Neue Funktionen

  • Speicherfehler auf das verantwortliche Isolat beschränken, anstatt die gesamte Sandbox zum Absturz zu bringen. Wenn der Isolat nicht mehr im Arbeitsspeicher ist, kann er nicht für weitere Auswertungen verwendet werden.
  • Derzeit werden die Ressourcen, die das Isolat enthält, erst freigegeben, wenn die Sandbox geschlossen wird. Dieses Verhalten zum Freigeben von Ressourcen kann sich in späteren Versionen der Bibliothek ändern.

API-Änderungen

  • Löst MemoryLimitExceededException aus, wenn bei einer Auswertung der Arbeitsspeicher des Isolats nicht mehr ausreicht.(I336ca)

Version 1.0.0-alpha02

5. Oktober 2022

androidx.javascriptengine:javascriptengine:1.0.0-alpha02 ist veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.

Neue Funktionen

  • Fügen Sie JavaScriptSandbox#isSupported hinzu, um zu prüfen, ob das System JavaScript-Sandboxes unterstützt.

API-Änderungen

  • Wird SandboxUnsupportedException ausgelöst, wenn JavaScriptSandbox aufgrund fehlender Systemunterstützung nicht erstellt werden kann. (I0dcd6)

Version 1.0.0-alpha01

10. August 2022

androidx.javascriptengine:javascriptengine:1.0.0-alpha01 ist veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.

Neue Funktionen

  • Wir haben experimentelle Unterstützung für JavaScriptSandbox und JavaScriptIsolate hinzugefügt, damit Kunden JavaScript in einer sicheren und eingeschränkten Umgebung testen können. Die APIs befinden sich in der aktiven Entwicklung und können ohne Vorankündigung geändert werden.

  • Bitte reichen Sie Feature Requests und Fehlerberichte für unsere JavaScriptEngine-Komponente ein.