JavaScriptEngine
最新の更新 | 安定版リリース | リリース候補版 | ベータ版リリース | アルファ版リリース |
---|---|---|---|---|
2023 年 11 月 1 日 | - | - | 1.0.0-beta01 | - |
依存関係の宣言
JavaScriptEngine への依存関係を追加するには、Google の Maven リポジトリをプロジェクトに追加する必要があります。詳しくは、Google の Maven リポジトリをご覧ください。
アプリまたはモジュールの build.gradle
ファイルに、必要なアーティファクトの依存関係を追加します。
Groovy
dependencies { implementation "androidx.javascriptengine:javascriptengine:1.0.0-beta01" }
Kotlin
dependencies { implementation("androidx.javascriptengine:javascriptengine:1.0.0-beta01") }
依存関係について詳しくは、ビルド依存関係の追加をご覧ください。
フィードバック
お寄せいただいたフィードバックは Jetpack 改善の参考にさせていただきます。新しい問題が見つかった場合や、このライブラリを改善するアイデアをお持ちの場合は、お知らせください。新しい問題を報告していただく前に、このライブラリの既存の問題をご確認ください。スターボタンをクリックすると、既存の問題に投票できます。
詳細については、Issue Tracker のドキュメントをご覧ください。
バージョン 1.0
バージョン 1.0.0-beta01
2023 年 11 月 1 日
androidx.javascriptengine:javascriptengine:1.0.0-beta01
がリリースされました。バージョン 1.0.0-beta01 に含まれる commit については、こちらをご覧ください。
1.0.0-alpha07
からの変更はありません
バージョン 1.0.0-alpha07
2023 年 10 月 18 日
androidx.javascriptengine:javascriptengine:1.0.0-alpha07
がリリースされました。バージョン 1.0.0-alpha07 に含まれる commit については、こちらをご覧ください。
新機能
- 新しい API が導入され、分離したクラッシュを処理するためのコールバックをアプリに登録できるようになりました。
API の変更
DEFAULT_MAX_HEAP_SIZE
をAUTOMATIC_MAX_HEAP_SIZE
に変更しました。(I6d303)FileDescriptorIoException
をDataInputException
に変更しました。(Iba4eb)DEFAULT_ISOLATE_HEAP_SIZE
をDEFAULT_MAX_HEAP_SIZE
に変更しました。(Iaa16f)- 機能しないコンソールの
getSource
メソッドとgetTrace
メソッドを削除しました。(I4b7a2) FileDescriptorIoException
を再表示しました(Ic44e6)- クラッシュの分離を処理するためのコールバックの登録をアプリに許可します。(Iad25f)
バージョン 1.0.0-alpha06
2023 年 10 月 4 日
androidx.javascriptengine:javascriptengine:1.0.0-alpha06
がリリースされました。バージョン 1.0.0-alpha06 に含まれる commit については、こちらをご覧ください。
新機能
- ソースを文字列に変換することなく
ParcelFileDescriptor/AssetFileDescriptor
から JavaScript を評価できる新しい API が導入されました。JavaScriptIsolate
クラスがスレッドセーフになりました。
API の変更
- false を返す代わりに例外をスローするように
provideNamedData
を変更しました。(I8909a) - Afds と Pfds を使用して JavaScript を評価するための API を追加しました。(I03e3a)
MemoryLimitExceededException
とSandboxDeadException
をサブクラスIsolateTerminatedException
にしました。(Icf359)- 公開 API
evaluateJavaScriptAsync(@NonNull byte[] code)
を削除しました。(I4b3ac)
バグの修正
JavaScriptIsolate
のスレッドをセーフにする。(Ib28e0)
バージョン 1.0.0-alpha05
2023 年 4 月 5 日
androidx.javascriptengine:javascriptengine:1.0.0-alpha05
がリリースされました。バージョン 1.0.0-alpha05 に含まれる commit については、こちらをご覧ください。
API の変更
バージョン 1.0.0-alpha04
2023 年 2 月 22 日
androidx.javascriptengine:javascriptengine:1.0.0-alpha04
がリリースされました。バージョン 1.0.0-alpha04 に含まれる commit については、こちらをご覧ください。
バグの修正
- サンドボックス化されたプロセスの終了時に発生する
NullPointerException
のまれなケースを修正しました。
バージョン 1.0.0-alpha03
2022 年 12 月 7 日
androidx.javascriptengine:javascriptengine:1.0.0-alpha03
がリリースされました。バージョン 1.0.0-alpha03 に含まれる commit については、こちらをご覧ください。
新機能
- サンドボックス全体のクラッシュではなく、対象となる分離部分のメモリ不足によるクラッシュが含まれます。分離部分はメモリ不足になると、評価に使用できなくなります。
- 現在、分離部分に割り当てられているリソースは、サンドボックスが終了するまで解放されません。ライブラリの後続バージョンでは、このリソース解放動作が変更される可能性があります。
API の変更
- 評価によって分離部分がメモリ不足になると
MemoryLimitExceededException
をスローします。(I336ca)
バージョン 1.0.0-alpha02
2022 年 10 月 5 日
androidx.javascriptengine:javascriptengine:1.0.0-alpha02
がリリースされました。バージョン 1.0.0-alpha02 に含まれる commit については、こちらをご覧ください。
新機能
- システムが JavaScript サンドボックスをサポートしているかどうかを確認できるように、
JavaScriptSandbox#isSupported
を追加します。
API の変更
- システムのサポートがないために
JavaScriptSandbox
を作成できない場合は、SandboxUnsupportedException
をスローします。(I0dcd6)
バージョン 1.0.0-alpha01
2022 年 8 月 10 日
androidx.javascriptengine:javascriptengine:1.0.0-alpha01
がリリースされました。バージョン 1.0.0-alpha01 に含まれる commit については、こちらをご覧ください。
新機能
JavaScriptSandbox
とJavaScriptIsolate
に試験運用版のサポートを追加し、クライアントが制限付きの安全な環境で JavaScript を評価できるようにしました。これは現在も開発中の分野であり、API が予告なく変更される場合があります。機能のリクエストやバグ報告は JavaScriptEngine コンポーネントから行ってください。