JavaScriptEngine

  
הפעלת האפשרות להערכת JavaScript באפליקציית Android.
העדכון האחרון גרסה יציבה גרסה מועמדת להפצה גרסת בטא גרסת אלפא
‫23 בספטמבר 2026 1.1.1 - - -

הצהרה על יחסי תלות

כדי להוסיף תלות ב-JavaScriptEngine, צריך להוסיף את מאגר Maven של Google לפרויקט. מידע נוסף זמין במאמר בנושא מאגר Maven של Google.

אתם יכולים להוסיף את יחסי התלות של הארטיפקטים שאתם צריכים בקובץ build.gradle של האפליקציה או המודול:

מגניב

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

Kotlin

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

מידע נוסף זמין במאמר הוספת יחסי תלות ב-build.

משוב

המשוב שלכם עוזר לנו לשפר את Jetpack. נשמח לדעת אם גיליתם בעיות חדשות או אם יש לכם רעיונות איך לשפר את הספרייה הזו. כדאי לעיין בבעיות הידועות בספרייה הזו לפני שמדווחים על בעיה. כדי להוסיף הצבעה בדיווח על בעיה קיימת, לוחצים על כפתור הכוכב.

יצירת דיווח על בעיה חדשה

מידע נוסף זמין במאמרי העזרה בנושא Issue Tracker.

גרסה 1.1 של JavaScriptEngine

גרסה 1.1.1

‫23 בספטמבר 2026

androidx.javascriptengine:javascriptengine:1.1.1 מופץ. גרסה 1.1.1 מכילה את השמירות האלה.

  • הסרה של תלות ישירה ב-kotlin-stdlib.
  • תיקון באג ב-JavaScriptSandbox.isSupported() שגורם להחזרת תוצאה שגויה.

גרסה 1.1.0

‫6 במאי 2026

androidx.javascriptengine:javascriptengine:1.1.0 מופץ. גרסה 1.1.0 מכילה את השמירות האלה.

גרסה ‎1.1.0-rc01

‫22 באפריל 2026

androidx.javascriptengine:javascriptengine:1.1.0-rc01 מופץ. גרסה ‎1.1.0-rc01 מכילה את השמירות האלה.

גרסה ‎1.1.0-beta01

‫8 באפריל 2026

androidx.javascriptengine:javascriptengine:1.1.0-beta01 מופץ. גרסה ‎1.1.0-beta01 מכילה את השמירות האלה.

תיקוני באגים

  • עדכון JavaScriptEngine לגרסה ‎1.1.0-beta01‏ (I7b63b)

גרסה ‎1.1.0-alpha02

‫25 במרץ 2026

androidx.javascriptengine:javascriptengine:1.1.0-alpha02 מופץ. גרסה ‎1.1.0-alpha02 מכילה את השמירות האלה.

תכונות חדשות

  • הוספת message ports API כדי לספק תקשורת סימטרית, גמישה ועם תקורה נמוכה עם JavaScript isolates. כך אפשר לשלוח ולקבל מחרוזות וArrayBuffers בלי להטמיע אותן בתוך הערכות או בלובי נתונים עם שם. ‫(I04bc0, ‏ b/490128971)

גרסה ‎1.1.0-alpha01

‫11 במרץ 2026

androidx.javascriptengine:javascriptengine:1.1.0-alpha01 מופץ. גרסה ‎1.1.0-alpha01 מכילה את השמירות האלה.

תיקוני באגים

  • הספריות מועברות לשימוש ביעד Java 11. המשמעות היא שקוד הבייט שנוצר יהיה Java 11 (גרסה 55 של קובץ המחלקה) ויכול להיות שיהיה צורך בביטול הסוכר כדי להשתמש בספרייה (If4c2a, ‏ b/457821470)
  • הספרייה הזו משתמשת עכשיו באנוטציות של JSpecify nullness, שהן מסוג type-use. מפתחי Kotlin צריכים להשתמש בארגומנט הבא של הקומפיילר כדי לאכוף שימוש נכון: -Xjspecify-annotations=strict (זו ברירת המחדל החל מגרסה 2.1.0 של קומפיילר Kotlin) (Ieee48, ‏ b/326456246)

גירסה 1.0

גרסה 1.0.0

‫2 ביולי 2025

הגרסה androidx.javascriptengine:javascriptengine:1.0.0 הושקה ללא שינויים משמעותיים מאז השקת גרסת ה-rc האחרונה. גרסה 1.0.0 מכילה את השמירות האלה.

גרסה ‎1.0.0-rc01

‫26 במרץ 2025

הגרסה androidx.javascriptengine:javascriptengine:1.0.0-rc01 יוצאת ללא שינויים משמעותיים מאז גרסת הבטא האחרונה. גרסה ‎1.0.0-rc01 מכילה את השמירות האלה.

גרסה ‎1.0.0-beta01

1 בנובמבר 2023

הגרסה androidx.javascriptengine:javascriptengine:1.0.0-beta01 הושקה ללא שינויים משמעותיים מאז גרסת האלפא האחרונה. גרסה ‎1.0.0-beta01 מכילה את השמירות האלה.

גרסה ‎1.0.0-alpha07

‫18 באוקטובר 2023

androidx.javascriptengine:javascriptengine:1.0.0-alpha07 מופץ. גרסה ‎1.0.0-alpha07 מכילה את השמירות האלה.

תכונות חדשות

  • השקנו API חדש שמאפשר לאפליקציות לרשום קריאות חוזרות (callbacks) כדי לטפל בקריסות של בידודים.

שינויים ב-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)
  • אפשר לאפליקציות לרשום קריאות חוזרות (callback) לטיפול בקריסות של בידודים. (Iad25f)

גרסה ‎1.0.0-alpha06

‫4 באוקטובר 2023

androidx.javascriptengine:javascriptengine:1.0.0-alpha06 מופץ. גרסה ‎1.0.0-alpha06 מכילה את השמירות האלה.

תכונות חדשות

  • הוספנו API חדש להערכת JavaScript מ-ParcelFileDescriptor/AssetFileDescriptor בלי להמיר את המקור למחרוזת. הכיתה JavaScriptIsolate מוגנת מפני תנאי מירוץ.

שינויים ב-API

  • משנים את provideNamedData כדי להפעיל חריגה במקום להחזיר false. (I8909a)
  • הוספת ממשקי API להערכת JavaScript דרך Afds ו-Pfds (I03e3a)
  • ליצור את מחלקת המשנה SandboxDeadException של IsolateTerminatedException (Icf359)MemoryLimitExceededException
  • הסרת API שפונה לציבור evaluateJavaScriptAsync(@NonNull byte[] code) (I4b3ac)

תיקוני באגים

  • הופכים את JavaScriptIsolate ל-thread safe. (Ib28e0)

גרסה ‎1.0.0-alpha05

‫5 באפריל 2023

androidx.javascriptengine:javascriptengine:1.0.0-alpha05 מופץ. גרסה ‎1.0.0-alpha05 מכילה את השמירות האלה.

שינויים ב-API

  • ההערכה והתוצאה כבר לא מוגבלות על ידי מגבלות Binder (I13b1d)
  • הוספת קריאה חוזרת לטיפול בהודעות מסוף מבודדות (I11725, ‏ Ic1c11)

גרסה ‎1.0.0-alpha04

‫22 בפברואר 2023

androidx.javascriptengine:javascriptengine:1.0.0-alpha04 מופץ. גרסה ‎1.0.0-alpha04 מכילה את השמירות האלה.

תיקוני באגים

  • תוקן מקרה נדיר של NullPointerException שנגרם כשתהליך הארגז מת.

גרסה ‎1.0.0-alpha03

‫7 בדצמבר 2022

androidx.javascriptengine:javascriptengine:1.0.0-alpha03 מופץ. גרסה ‎1.0.0-alpha03 מכילה את השמירות האלה.

תכונות חדשות

  • למנוע קריסות של אין זיכרון פנוי (OOM) בבידוד האחראי במקום לגרום לקריסה של כל ארגז החול. אחרי שהבידוד יוצא מהזיכרון, אי אפשר להשתמש בו להערכה נוספת.
  • בשלב הזה, המשאבים שהבידוד מחזיק לא משוחררים עד לסגירת ארגז החול. יכול להיות שההתנהגות הזו של שחרור משאבים תשתנה בגרסאות מאוחרות יותר של הספרייה.

שינויים ב-API

  • להקפיץ הודעת שגיאה MemoryLimitExceededException כשתוצאת ההערכה היא שהבידוד חורג מאין זיכרון פנוי (OOM). (I336ca)

גרסה ‎1.0.0-alpha02

‫5 באוקטובר 2022

androidx.javascriptengine:javascriptengine:1.0.0-alpha02 מופץ. גרסה ‎1.0.0-alpha02 מכילה את השמירות האלה.

תכונות חדשות

  • מוסיפים JavaScriptSandbox#isSupported כדי לבדוק אם המערכת תומכת בארגזי חול של JavaScript.

שינויים ב-API

  • הפונקציה מחזירה SandboxUnsupportedException אם אי אפשר ליצור את JavaScriptSandbox בגלל חוסר תמיכה במערכת. (I0dcd6)

גרסה ‎1.0.0-alpha01

‫10 באוגוסט 2022

androidx.javascriptengine:javascriptengine:1.0.0-alpha01 מופץ. גרסה 1.0.0-alpha01 מכילה את השמירות האלה.

תכונות חדשות

  • הוספנו תמיכה ניסיונית ב-JavaScriptSandbox וב-JavaScriptIsolate כדי לאפשר ללקוחות להעריך את JavaScript בסביבה בטוחה ומוגבלת. התחום הזה נמצא בפיתוח פעיל, וממשקי ה-API כפופים לשינויים ללא הודעה מוקדמת.

  • מומלץ לשלוח בקשות לתכונות ודיווחים על באגים ברכיב JavaScriptEngine.