פעילות

גישה לממשקי API שניתנים לקישור שנוצרו על סמך Activity.
העדכון האחרון גרסה יציבה גרסה מועמדת להפצה גרסת בטא גרסה אלפא
13 בנובמבר 2024 1.9.3 - 1.10.0-beta01 -

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

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

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

מגניב

dependencies {
    def activity_version = "1.9.2"

    // Java language implementation
    implementation "androidx.activity:activity:$activity_version"
    // Kotlin
    implementation "androidx.activity:activity-ktx:$activity_version"
}

Kotlin

dependencies {
    val activity_version = "1.9.2"

    // Java language implementation
    implementation("androidx.activity:activity:$activity_version")
    // Kotlin
    implementation("androidx.activity:activity-ktx:$activity_version")
}

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

משוב

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

דיווח על בעיה חדשה

מידע נוסף זמין במסמכי התיעוד של Issue Tracker.

גרסה 1.10

גרסה 1.10.0-beta01

13 בנובמבר 2024

הגרסאות androidx.activity:activity:1.10.0-beta01, ‏androidx.activity:activity-compose:1.10.0-beta01 ו-androidx.activity:activity-ktx:1.10.0-beta01 פורסמו ללא שינויים מאז גרסת האלפא האחרונה. גרסת 1.10.0-beta01 כוללת את ההוספות האלה.

גרסה 1.10.0-alpha03

30 באוקטובר 2024

התכונות androidx.activity:activity:1.10.0-alpha03, androidx.activity:activity-compose:1.10.0-alpha03 וגם androidx.activity:activity-ktx:1.10.0-alpha03 משוחררות. גרסת 1.10.0-alpha03 כוללת את ההוספות האלה.

שינויים ב-API

  • נוספה רכיב LocalActivity חדש ברמת האפליקציה שמספק את Activity להיקף הנוכחי, וכך מבטלת את הצורך של המפתחים לקבל Activity מה-LocalContext. הוא כולל גם כלל חדש לזיהוי שגיאות בקוד (lint) שבודק מתי מתבצע הטמעה שגויה של LocalContext ל-Activity. (I7746a, ‏ b/283009666)

תיקוני באגים

  • מפעילות 1.9.3: PredictiveBackHandler לא יפעיל יותר את קריאת החזרה שלו אחרי שהמתאם יושבת. הפעולה הזו תפתור בעיה שבה NavHost מ-Navigation Compose יגרום להודעת השגיאה IndexOutOfBoundsException. (I3f75e, ‏ b/365027664, ‏ b/340202286)

עדכון יחסי תלות

  • Activity Compose תלוי עכשיו ב-Compose Runtime 1.7.0‏ (I7746a, ‏ b/283009666)

גרסה 1.10.0-alpha02

4 בספטמבר 2024

התכונות androidx.activity:activity:1.10.0-alpha02, androidx.activity:activity-compose:1.10.0-alpha02 וגם androidx.activity:activity-ktx:1.10.0-alpha02 משוחררות. גרסת 1.10.0-alpha02 כוללת את ההוספות האלה.

שינויים בהתנהגות

  • אם הכלי לבחירת תמונות במערכת לא זמין, חוזי התוצאות של הפעילות PickVisualMedia ו-PickMultipleVisualMedia שמפעילים את הכלי לבחירת תמונות כבר לא מעבירים את הגישה ישירות ל-Google Play Services, אלא משתמשים בפעולה הציבורית ACTION_SYSTEM_FALLBACK_PICK_IMAGES ובתכונות הנוספות הקשורות כדי לספק חוויית שימוש עקבית בכלי לבחירת תמונות ליצרני ציוד מקורי ולאפליקציות מערכת כחלופה. השינוי הזה לא אמור להשפיע על חוויית המשתמש במכשירים עם גרסה עדכנית של שירותי Google Play. (I3513d)

תיקוני באגים

  • הסרנו את התיאור הידני של הגישה לממשקי API חדשים של פלטפורמות, כי זה קורה באופן אוטומטי באמצעות בניית מודלים של API כשמשתמשים ב-R8 עם AGP 7.3 ואילך (למשל, R8 גרסה 3.3) ובכל גרסאות ה-build כשמשתמשים ב-AGP 8.1 ואילך (למשל, D8 גרסה 8.1). לקוחות שלא משתמשים ב-AGP מומלצים לעדכן ל-D8 בגרסה 8.1 ואילך. למידע נוסף, מומלץ לעיין במאמר הזה. (I9496c, ‏ b/345472586)
  • מ-Activity 1.9.2: תוקנה בעיה שבה ממשק ה-API PredictiveBackHandler של Activity Compose המשיך לטפל בתנועת החזרה אחורה של המערכת בפריים שבו היא הושבתה. כתוצאה מכך, ספריות כמו Navigation Compose יכלו לטפל בחזרה אחורה גם אם סטאק החזרה אחורה ריק, וכתוצאה מכך הופיעה הודעת השגיאה IndexOutOfBoundsException. (Ie3301, ‏ b/340202286)
  • מפעילות 1.9.1: תוקנה בעיה ב-PredictiveBackHandler שבה אחרי ביצוע שחזור המערכת, הניסיון לבצע onBackPressed מ-OnBackPressedDispatcher נכשל. (I5f1f8)

גרסה 1.10.0-alpha01

26 ביוני 2024

התכונות androidx.activity:activity:1.10.0-alpha01, androidx.activity:activity-compose:1.10.0-alpha01 וגם androidx.activity:activity-ktx:1.10.0-alpha01 משוחררות. הגרסה הזו מפותחת בהסתעפות פנימית.

תכונות חדשות

  • נוספה תמיכה בתכונות החדשות של PhotoPicker שהוצגו ב-Android V, כולל האפשרות לבחור תמונות לפי סדר ולבחור איזה כרטיסייה (אלבומים או תמונות) תהיה גלויה בהתחלה.

גרסה 1.9

גרסה 1.9.3

16 באוקטובר 2024

התכונות androidx.activity:activity:1.9.3, androidx.activity:activity-compose:1.9.3 וגם androidx.activity:activity-ktx:1.9.3 משוחררות. גרסה 1.9.3 כוללת את ההוספות האלה.

תיקוני באגים

  • אחרי שהמתקנה יושבת, PredictiveBackHandler לא תפעיל יותר את פונקציית ה-callback שלה. הפעולה הזו תפתור בעיה שבה NavHost מ-Navigation Compose יגרום להודעת השגיאה IndexOutOfBoundsException. (I3f75e, ‏ b/340202286)

גרסה 1.9.2

4 בספטמבר 2024

התכונות androidx.activity:activity:1.9.2, androidx.activity:activity-compose:1.9.2 וגם androidx.activity:activity-ktx:1.9.2 משוחררות. גרסה 1.9.2 מכילה את ה-commits האלה ב-lthccommits.

תיקוני באגים

  • תוקנה בעיה שבה ה-API‏ PredictiveBackHandler של Activity Compose המשיך לטפל בתנועת החזרה אחורה במערכת בפריים שבו הוא הושבת. כתוצאה מכך, ספריות כמו Navigation Compose יכלו לטפל בתנועת החזרה אחורה גם אם סטאק החזרה אחורה היה ריק, וכתוצאה מכך הופיעה הודעת השגיאה IndexOutOfBoundsException. (Ie3301, ‏ b/340202286)

גרסה 1.9.1

24 ביולי 2024

התכונות androidx.activity:activity:1.9.1, androidx.activity:activity-compose:1.9.1 וגם androidx.activity:activity-ktx:1.9.1 משוחררות. גרסה 1.9.1 כוללת את ההוספות האלה.

תיקוני באגים

  • תוקנה בעיה ב-PredictiveBackHandler שבה אחרי ביצוע שחזור המערכת, הניסיון לבצע onBackPressed מ-OnBackPressedDispatcher נכשל. (I5f1f8)

גרסה 1.9.0

17 באפריל 2024

התכונות androidx.activity:activity:1.9.0, androidx.activity:activity-compose:1.9.0 וגם androidx.activity:activity-ktx:1.9.0 משוחררות. גרסה 1.9.0 כוללת את ההוספות האלה.

שינויים חשובים מאז גרסה 1.8.0

  • ComponentActivity מטמיע עכשיו את OnUserLeaveHintProvider כדי לאפשר לרכיבים לבצע קריאות חוזרות לאירועים מסוג onUserLeaveHint.
  • בממשקי ה-API OnBackPressedCallback, ‏ BackHandler ו-PredictiveBackHandler מופיעה עכשיו אזהרה כשקוראים ל-onBackPressedDispatcher.onBackPressed() בזמן טיפול בלחצן 'הקודם', כי הפעולה הזו תמיד תפר את האנימציה החזויה של תנועת החזרה. פרטים נוספים זמינים במדריך לשיטות מומלצות.
  • שאר ממשקי ה-API של Activity נכתבו מחדש ב-Kotlin וכל התוספים שהיו זמינים בעבר ב-activity-ktx הועברו ל-activity. activity-ktx ריק לגמרי עכשיו.
    • כחלק מההמרה של ActivityResultLauncher ל-Kotlin, השיטה getContract היא עכשיו מאפיין קוטליני מופשט. זהו שינוי תואם בינארי, אבל הוא מפר את המקור אם ההטמעה של ActivityResultLauncher נכתבה ב-Kotlin.

גרסה 1.9.0-rc01

3 באפריל 2024

התכונות androidx.activity:activity:1.9.0-rc01, androidx.activity:activity-compose:1.9.0-rc01 וגם androidx.activity:activity-ktx:1.9.0-rc01 משוחררות. גרסת 1.9.0-rc01 כוללת את ההוספות האלה.

עדכון יחסי תלות

גרסה 1.9.0-beta01

‫20 במרץ 2024

התכונות androidx.activity:activity:1.9.0-beta01, androidx.activity:activity-compose:1.9.0-beta01 וגם androidx.activity:activity-ktx:1.9.0-beta01 משוחררות. גרסת 1.9.0-beta01 כוללת את ההוספות האלה.

תיקוני באגים

  • תוקנה נסיגה בביצועים בזמן ההפעלה של פעילות שהופיעה ב-Activity 1.9.0-alpha02 כתוצאה מהקריאה ל-OnBackPressedDispatcher כחלק מהיצירה של הפעילות. (Ie75e3)

גרסה 1.9.0-alpha03

7 בפברואר 2024

התכונות androidx.activity:activity:1.9.0-alpha03, androidx.activity:activity-compose:1.9.0-alpha03 וגם androidx.activity:activity-ktx:1.9.0-alpha03 משוחררות. גרסה 1.9.0-alpha03 מכילה את ההצהרות האלה.

אזהרה על שגיאות בקוד

תיקוני באגים

  • אם אירוע החזרה נשלח מהמערכת שהתחיל במהלך תנועת חזרה חזויה שכבר פועלת, תנועת החזרה החזויה שרצה כרגע תבוטל ואירוע החזרה החדש יתחיל לפעול כדי להתחיל תנועת חזרה חזויה חדשה. (I3482e)
  • תוקנה קריסה שנגרמה בגישה ל-onBackPressedDispatcher מ-ComponentActivity בפעם הראשונה משרשור רקע. עכשיו אפשר לגשת ל-onBackPressedDispatcher בכל שיחה. (I79955)

גרסה 1.9.0-alpha02

24 בינואר 2024

התכונות androidx.activity:activity:1.9.0-alpha02, androidx.activity:activity-compose:1.9.0-alpha02 וגם androidx.activity:activity-ktx:1.9.0-alpha02 משוחררות. גרסה 1.9.0-alpha02 מכילה את השמירות האלה.

המרות ב-Kotlin

  • ActivityResultRegistry נכתב מחדש ב-Kotlin. כך מוודאים שהאפשרות של ערכים ריקים (null) של הפרמטרים הכלליים בחוזה שהועברו ל-register תועבר בצורה נכונה ל-ActivityResultLauncher שיוחזר אליכם. (I121f0)
  • ActivityResult נכתב מחדש ב-Kotlin. התוספים של Kotlin‏ ActivityResult שתומכים בפירוק מבנה לשדות resultCode ו-data הועברו מ-activity-ktx אל activity. (I0565a)
  • התוספים של Kotlin ל-by viewModels() עבור ComponentActivity ו-trackPipAnimationHintView הועברו מ-activity-ktx אל activity. הארטיפקט activity-ktx ריק לגמרי עכשיו. (I0a444)

תיקוני באגים

  • ממשק ה-API של enableEdgeToEdge מצייר עכשיו מסביב לכל חתכים במסך. (a3644b, ‏ b/311173461)
  • מפעילות 1.8.2: תוקן ה-extra שהוענק ל-ACTION_SYSTEM_FALLBACK_PICK_IMAGES של חוזה הפעילות של 'בחירת תמונה', כדי להעביר לו בצורה נכונה את המפתח EXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX, במקום להשתמש ב-extra עם המפתח "com.google.android.gms.provider.extra.PICK_IMAGES_MAX". יצרני ציוד מקורי (OEM) שמטמיעים כלי בחירה של תמונות כחלופה למערכת מומלצים מאוד לתמוך בשני התוספים כדי להבטיח את התאימות הרחבה ביותר. (I96a00)

גרסה 1.9.0-alpha01

29 בנובמבר 2023

התכונות androidx.activity:activity:1.9.0-alpha01, androidx.activity:activity-compose:1.9.0-alpha01 וגם androidx.activity:activity-ktx:1.9.0-alpha01 משוחררות. גרסה 1.9.0-alpha01 מכילה את ההוספות האלה.

תכונות חדשות

  • ComponentActivity מטמיע עכשיו את OnUserLeaveHintProvider כדי לאפשר לרכיבים לבצע קריאות חוזרות לאירועים מסוג onUserLeaveHint. (I54892)

שינויים ב-API

  • ComponentActivity נכתב מחדש ב-Kotlin. (I14f31)
  • ActivityResultCaller נכתב מחדש ב-Kotlin. (Ib02e4)
  • ActivityResultLauncher נכתב מחדש ב-Kotlin. כחלק מההמרה הזו, השיטה getContract היא עכשיו נכס קולטין מופשט. זהו שינוי תואם בינארי, אבל הוא מפר את המקור אם ההטמעה של ActivityResultLauncher נכתבה ב-Kotlin. (Id4615)
  • רמת ה-API המינימלית של PickVisualMediaRequest היא עכשיו 19, כמו זו של חוזה PickVisualMedia Activity Result. (Id6e21)

עדכון יחסי תלות

גרסה 1.8

גרסה 1.8.2

13 בדצמבר 2023

התכונות androidx.activity:activity:1.8.2, androidx.activity:activity-compose:1.8.2 וגם androidx.activity:activity-ktx:1.8.2 משוחררות. גרסה 1.8.2 כוללת את השמירות האלה.

תיקוני באגים

  • תוקן הרכיב הנוסף שהוענק ל-ACTION_SYSTEM_FALLBACK_PICK_IMAGES של חוזה הפעילות של בורר התמונות, כדי להעביר לו בצורה נכונה את המפתח EXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX, במקום להשתמש ברכיב הנוסף עם המפתח "com.google.android.gms.provider.extra.PICK_IMAGES_MAX". יצרני ציוד מקורי (OEM) שמטמיעים כלי בחירה של תמונות כחלופה למערכת מומלצים מאוד לתמוך בשני התוספים כדי להבטיח את התאימות הרחבה ביותר. (I96a00)

גרסה 1.8.1

15 בנובמבר 2023

התכונות androidx.activity:activity:1.8.1, androidx.activity:activity-compose:1.8.1 וגם androidx.activity:activity-ktx:1.8.1 משוחררות. גרסה 1.8.1 מכילה את השינויים האלה.

תיקוני באגים

  • OnBackPressedDispatcher ממשיך לשלוח את האירוע ל-OnBackPressedCallback הנכון גם אחרי שמתווסף OnBackPressedCallback חדש בזמן הטיפול בתנועת החזרה. (Id0ff6)

גרסה 1.8.0

4 באוקטובר 2023

התכונות androidx.activity:activity:1.8.0, androidx.activity:activity-compose:1.8.0 וגם androidx.activity:activity-ktx:1.8.0 משוחררות. גרסה 1.8.0 כוללת את ההצהרות האלה.

שינויים חשובים מאז גרסה 1.7.0

  • חיזוי תנועת החזרהOnBackPressedCallback מציע עכשיו קריאות חוזרות חדשות של חיזוי תנועת החזרה לטיפול בהתחלה של תנועת החזרה, בהתקדמות במהלך התנועה ובביטול של תנועת החזרה, בנוסף לקריאה החוזרת הקודמת של handleOnBackPressed() לזמן שבו תנועת החזרה מתבצעת. בנוסף, העדכון הזה כולל את PredictiveBackHandler Composable לטיפול באירועים חזויים של תנועת חזרה לאחור ב-Activity Compose. הוא מספק זרימה של אובייקטים מסוג BackEventCompat שצריך לאסוף ב-lambda המושהית שסיפקתם:
  PredictiveBackHandler { progress: Flow<BackEventCompat> ->
    // code for gesture back started
    try {
      progress.collect { backEvent ->
      // code for progress
    }
    // code for completion
    } catch (e: CancellationException) {
      // code for cancellation
    }
  }

ComponentActivity.onBackPressed() הוצא משימוש לטובת ממשקי ה-API לטיפול בבקשות חזרה. מפתחים צריכים להשתמש עכשיו ב-OnBackPressedDispatcher במקום לשנות את השיטה הזו.

  • EdgeToEdge – הוספה של ComponentActivity.enableEdgeToEdge() כדי להגדיר בקלות את המסך לאורך כל המסך באופן תואם לאחור.

גרסה 1.8.0-rc01

20 בספטמבר 2023

התכונות androidx.activity:activity:1.8.0-rc01, androidx.activity:activity-compose:1.8.0-rc01 וגם androidx.activity:activity-ktx:1.8.0-rc01 משוחררות. גרסה 1.8.0-rc01 כוללת את השמירות האלה.

גרסה 1.8.0-beta01

6 בספטמבר 2023

התכונות androidx.activity:activity:1.8.0-beta01, androidx.activity:activity-compose:1.8.0-beta01 וגם androidx.activity:activity-ktx:1.8.0-beta01 משוחררות. גרסה 1.8.0-beta01 כוללת את ההצהרות האלה.

שיפור מסמכי התיעוד

  • שיפרנו את המסמכים של BackEventCompat. (aosp/2722254)

גרסה 1.8.0-alpha07

23 באוגוסט 2023

התכונות androidx.activity:activity:1.8.0-alpha07, androidx.activity:activity-compose:1.8.0-alpha07 וגם androidx.activity:activity-ktx:1.8.0-alpha07 משוחררות. גרסה 1.8.0-alpha07 מכילה את ההוספות האלה.

תכונות חדשות

  • נוספה ל-Activity Compose רכיב Composable חדש מסוג PredictiveBackHandler לטיפול באירועים של תנועות חזרה חזויות. הוא מספק Flow של BackEventCompat אובייקטים שצריך לאסוף ב-lambda להשהיה שאתם מספקים:

    PredictiveBackHandler { progress: Flow<BackEventCompat> ->
      // code for gesture back started
      try {
        progress.collect { backEvent ->
        // code for progress
      }
      // code for completion
      } catch (e: CancellationException) {
        // code for cancellation
      }
    }
    

    הוא כולל גם אזהרה בזמן הידור באמצעות כלל איתור שגיאות בקוד (lint) כדי לוודא ש-Flow קורא ל-collect(). (Id2773, ‏ b/294884345)

  • עכשיו, onBackPressedDispatcher ב-ComponentActivity מופעל באיטרציה, כך שהוא נוצר רק כשצריך. (I0bf8e)

תיקוני באגים

  • ComponentActivity לא יציג יותר שגיאת NPE ב-Android 13 כשיתקבל onBackPressed() קריאה חוזרת והפעילות כבר DESTROYED. (Idb055, ‏ b/291869278)
  • הוסרו שימושים ב-API הניסיוני isAtLeastU() (Ie9117, ‏ b/289269026)

גרסה 1.8.0-alpha06

21 ביוני 2023

התכונות androidx.activity:activity:1.8.0-alpha06, androidx.activity:activity-compose:1.8.0-alpha06 וגם androidx.activity:activity-ktx:1.8.0-alpha06 משוחררות. גרסה 1.8.0-alpha06 מכילה את השמירות האלה.

תכונות חדשות

  • עכשיו, הלחצן OnBackPressedDispatcher מבטל בצורה נכונה את כל הקריאות החוזרות שהוסרו במהלך תנועת חזרה חזוייה. (I3f90f)

שינויים ב-API

  • כשמעבירים את SystemBarStyle.auto ל-API‏ enableEdgeToEdge, עכשיו אפשר לשנות את הפרמטר lambda‏ detectDarkMode כדי לספק לוגיקה מותאמת אישית לזיהוי מצב לילה. (aosp/2546393, ‏ b/278263793)

גרסה 1.8.0-alpha05

7 ביוני 2023

התכונות androidx.activity:activity:1.8.0-alpha05, androidx.activity:activity-compose:1.8.0-alpha05 וגם androidx.activity:activity-ktx:1.8.0-alpha05 משוחררות. הגרסה הזו מפותחת בהסתעפות פנימית.

שינויים ב-API

  • Activity מספק עכשיו את הכיתה BackEventCompat שמייצגת גרסה תואמת לאחור של BackEvent, שמופרדת מהכיתה BackEvent של המסגרת.
  • שינוי שגורם לשבירה של תאימות: השיטות handleOnBackStarted ו-handleOnBackProgressed של OnBackPressedCallback מקבלות עכשיו מופע של androidx.activity.BackEventCompat במקום סוג android.window.BackEvent של מסגרת. גם ממשקי ה-API המקבילים של @VisibleForTesting ב-OnBackPressedDispatcher עודכנו.
  • ה-constructor של OnBackPressedDispatcher מקבל עכשיו מופע Consumer<Boolean> אופציונלי שמאפשר לבעלים של המפנה לקבל קריאה חוזרת (callback) בכל פעם שמספר הקריאות החוזרות המופעלות משתנה מאפס למספר שונה מאפס או להפך.

תיקוני באגים

גרסה 1.8.0-alpha04

10 במאי 2023

התכונות androidx.activity:activity:1.8.0-alpha04, androidx.activity:activity-compose:1.8.0-alpha04 וגם androidx.activity:activity-ktx:1.8.0-alpha04 משוחררות. הגרסה הזו שוחררה מענף פנימי.

תיקוני באגים

  • מ-Activity 1.7.1: - ה-ReportFullyDrawExecuter לא דולף יותר כשמשתמשים ב-ComponentActivity עם ActivityScenario. (Id2ff2, ‏ b/277434271)

גרסה 1.8.0-alpha03

12 באפריל 2023

התכונות androidx.activity:activity:1.8.0-alpha03, androidx.activity:activity-compose:1.8.0-alpha03 וגם androidx.activity:activity-ktx:1.8.0-alpha03 משוחררות. הגרסה הזו שוחררה מענף פנימי.

תכונות חדשות

  • הוספנו את ComponentActivity.setUpEdgeToEdge() כדי להגדיר בקלות את התצוגה מקצה לקצה באופן תואם לאחור.

שינויים ב-API

  • ComponentActivity.onBackPressed() הוצא משימוש לטובת ממשקי ה-API לטיפול בבקשות חזרה. מפתחים צריכים להשתמש עכשיו ב-OnBackPressedDispatcher במקום לשנות את השיטה הזו. (Ibce2f, ‏ b/271596918)
  • ComponentDialog ו-ComponentActivity מכילים עכשיו את ה-API הציבורי initViewTreeOwners(), שמשמש לאתחול של כל הבעלים של עץ התצוגה לפני הגדרת תצוגת התוכן. (Ibdce0, ‏ b/261314581)

תיקוני באגים

  • תוקנה בעיה שבה קטעי Fragment (משבצות) ביטלו באופן שגוי את התוקף של רכיבי MenuHost (מארחי תפריטים), וכתוצאה מכך התפריט הפעיל בפעילות הראה התנהגות לא צפויה. (I9404e, ‏ b/244336571)

שינויים אחרים

  • ב-ActivityResultRegister נעשה עכשיו שימוש ב-Kotlin Random במקום ב-Java. (I4d98f, ‏ b/272096025)

גרסה 1.8.0-alpha02

8 במרץ 2023

התכונות androidx.activity:activity:1.8.0-alpha02, androidx.activity:activity-compose:1.8.0-alpha02 וגם androidx.activity:activity-ktx:1.8.0-alpha02 משוחררות. פיתוח מענף פנימי.

עדכון יחסי תלות

גרסה 1.8.0-alpha01

8 בפברואר 2023

התכונות androidx.activity:activity:1.8.0-alpha01, androidx.activity:activity-compose:1.8.0-alpha01 וגם androidx.activity:activity-ktx:1.8.0-alpha01 משוחררות. ה-build הזה נוצר מענף פנימי.

תכונות חדשות

  • הכיתה OnBackPressedCallback מכילה עכשיו קריאות חוזרות חדשות (callbacks) של התקדמות של תנועת החזרה לחיזוי לטיפול בהתחלה של תנועת החזרה, בהתקדמות במהלך תנועת החזרה ובביטול של תנועת החזרה, בנוסף לקריאה החוזרת הקודמת handleOnBackPressed() לזמן שבו תנועת החזרה מתבצעת.

גרסה 1.7

גרסה 1.7.2

24 במאי 2023

התכונות androidx.activity:activity:1.7.2, androidx.activity:activity-compose:1.7.2 וגם androidx.activity:activity-ktx:1.7.2 משוחררות. גרסה 1.7.2 כוללת את השמירות האלה.

תיקוני באגים

  • תיקון קריסה של ReportDrawn כשמנווטים מהמסך לפני שמפעילים את report. (Ic46f1, ‏ b/260506820)

גרסה 1.7.1

19 באפריל 2023

התכונות androidx.activity:activity:1.7.1, androidx.activity:activity-compose:1.7.1 וגם androidx.activity:activity-ktx:1.7.1 משוחררות. גרסה 1.7.1 כוללת את השינויים האלה.

תיקוני באגים

  • אין יותר דליפת מידע ב-ReportFullyDrawExecuter כשמשתמשים ב-ComponentActivity עם ActivityScenario. (Id2ff2, ‏ b/277434271)

גרסה 1.7.0

22 במרץ 2023

התכונות androidx.activity:activity:1.7.0, androidx.activity:activity-compose:1.7.0 וגם androidx.activity:activity-ktx:1.7.0 משוחררות. גרסה 1.7.0 כוללת את השמירות האלה.

שינויים חשובים מאז גרסה 1.6.0

  • חוזי הפעילות של 'בחירת תמונות' ב-PickVisualMedia וב-PickMultipleVisualMedia עודכנו כך שיכללו חלופה נוספת למקרה ש-MediaStore.ACTION_PICK_IMAGES לא זמין. כך יצרנים של ציוד מקורי ואפליקציות מערכת, כמו Google Play Services, יוכלו לספק חוויה עקבית של 'בחירת תמונות' במגוון רחב יותר של מכשירי Android ורמות API, על ידי הטמעת פעולת החלופה. הכלי לבחירת תמונות ישתמש באפשרות החלופית הזו אם היא זמינה, לפני שיעבור לשימוש ב-Intent.ACTION_OPEN_DOCUMENT, שעדיין תומך בכל המכשירים עם API מגרסה 19 ומעלה.
  • עכשיו ל-ComponentDialog יש הטמעה של SavedStateRegistryOwner, יש לו גישה ל-SavedStateRegistry שלו והוא מגדיר את SavedStateRegistryOwner ל-ViewTree שלו. עכשיו אפשר להשתמש ב-Jetpack Compose ב-ComponentDialog כי הוא עומד בדרישות של LifecycleOwner ושל SavedStateRegistryOwner שמצורפים לחלון באמצעות ממשקי ה-API של ViewTree.
  • עכשיו אפשר להגדיר מספר דגלים ב-IntentSenderRequest.Builder.setFlags() מ-Intent, במקום רק דגל אחד.

המרה של Kotlin

מספר כיתות Activity הומרו ל-Kotlin. כל הכיתות שהועברו עדיין שומרות על תאימות הבינארית שלהן לגרסאות קודמות. בכיתות הבאות יש שינויים לא תואמים למקור של כיתות שנכתבו ב-Kotlin: ActivityResultRegistryOwner, ‏ OnBackPressedDispatcherOwner.

בטבלה הבאה מפורטים מקורות ההמרות בגרסה החדשה של 'פעילות':

פעילות 1.5 פעילות 1.6
override fun getActivityResultRegistry() = activityResultRegistry override val activityResultRegistry = activityResultRegistry
override fun getOnBackPressedDispatcher() = onBackPressedDispatcher override val onBackPressedDispatcher = onBackPressedDispatcher

גם הכיתות האלה הומרו ל-Kotlin, אבל הן עדיין תואמות למקור: ContextAware,‏ ContextAwareHelper,‏ OnContextAvailableListener,‏ IntentSenderRequest ו-OnBackPressedDispatcher

ממשקי API של FullyDrawnReporter

ComponentActivity מספק עכשיו מכונה של FullyDrawnReporter שמאפשרת לרכיבים מרובים לדווח כשהם מוכנים לאינטראקציה. ComponentActivity יחכה עד שכל הרכיבים יסתיימו לפני שיפעיל את reportFullyDrawn() בשמכם. ממשקי ה-API האלה מטפלים בדרישות התזמון בשבילכם, ואין צורך לבצע קריאה אליהם כחלק מקריאה ל-onDraw.

מומלץ להפעיל את ממשקי ה-API האלה כדי:

  • שליחת אות ל-Android Runtime בסיום ההפעלה, כדי לוודא שכל הקוד שפועל במהלך רצף הפעלה של כמה פריימים נכלל בעדיפות גבוהה לצורך הידור ברקע.
  • שליחת אות ל-Macrobenchmark ול-Play Vitals כשהאפליקציה נחשבת כמוצגת במלואה למדדי ההפעלה הראשונית, כדי שתוכלו לעקוב אחרי הביצועים.

הוספנו שלושה ממשקי Activity Compose API כדי שיהיה קל יותר להשתמש ב-FullyDrawnReporter מרכיבים בודדים של רכיבים מותאמים אישית:

  • ReportDrawn מציין שהרכיב המודולרי מוכן מיד לאינטראקציה.
  • ReportDrawnWhen מקבלת תנאי (למשל, list.count > 0) כדי לציין מתי הרכיב המודולרי מוכן לאינטראקציה.
  • ReportDrawnAfter מקבלת שיטה להשהיה, וכשהיא מסתיימת, היא מציינת שאתם מוכנים לאינטראקציה.

עדכוני יחסי תלות

גרסה 1.7.0-rc01

8 במרץ 2023

התכונות androidx.activity:activity:1.7.0-rc01, androidx.activity:activity-compose:1.7.0-rc01 וגם androidx.activity:activity-ktx:1.7.0-rc01 משוחררות. גרסה 1.7.0-rc01 כוללת את השמירות האלה.

עדכון יחסי תלות

גרסה 1.7.0-beta02

22 בפברואר 2023

התכונות androidx.activity:activity:1.7.0-beta02, androidx.activity:activity-compose:1.7.0-beta02 וגם androidx.activity:activity-ktx:1.7.0-beta02 משוחררות. גרסה 1.7.0-beta02 כוללת את השמירות האלה.

שינויים ב-API

  • הפעולה והפרמטר הנוסף שמשמשים את החוזים PickVisualMedia ו-PickMultipleVisualMedia כחלופה במקרה ש-MediaStore.ACTION_PICK_IMAGES לא זמין הם עכשיו קבועים ציבוריים שמספקים יציבות ל-API של יצרני ציוד מקורי ואפליקציות מערכת שרוצים לספק חוויה עקבית של 'כלי הבחירה של Google Photos'. ההטמעה של חלופת הגיבוי הזו עדיין מוגבלת רק לאפליקציות מערכת. (Icd320)

גרסה 1.7.0-beta01

8 בפברואר 2023

התכונות androidx.activity:activity:1.7.0-beta01, androidx.activity:activity-compose:1.7.0-beta01 וגם androidx.activity:activity-ktx:1.7.0-beta01 משוחררות. גרסה 1.7.0-beta01 כוללת את ההצהרות האלה על ביצוע שינויים.

תכונות חדשות

  • עכשיו אפשר להגדיר מספר דגלים ב-IntentSenderRequest.Builder.setFlags() מ-Intent, במקום רק דגל אחד. (Iac04c)

תיקוני באגים

  • חלופת החירום של PickVisualMedia למקרה שהכלי לבחירת תמונות ב-Framework לא זמין מגבילה עכשיו בצורה נכונה את הטיפול לאפליקציות שמותקנות בתמונת המערכת של המכשיר. (If8ae6)

המרות ב-Kotlin

  • ActivityResultRegistryOwner נכתב עכשיו ב-Kotlin. זהו שינוי לא תואם למקור עבור הכיתות שנכתבו ב-Kotlin – עכשיו צריך לשנות את ברירת המחדל של המאפיין activityResultRegistry במקום להטמיע את הפונקציה הקודמת getActivityResultRegistry(). (I0b00e)
  • OnBackPressedDispatcherOwner נכתב עכשיו ב-Kotlin. זהו שינוי לא תואם למקור עבור הכיתות שנכתבו ב-Kotlin – עכשיו צריך לשנות את ברירת המחדל של המאפיין onBackPressedDispatcher במקום להטמיע את הפונקציה הקודמת getOnBackPressedDispatcher. (Ia277d)
  • ContextAware, ‏ ContextAwareHelper, ‏ OnContextAvailableListener, ‏ IntentSenderRequest וגם OnBackPressedDispatcher נכתבים עכשיו ב-Kotlin. (I1a73e, ‏ Iada92, ‏ aosp/2410754, ‏ I18ac7, ‏ b/257291701)

גרסה 1.7.0-alpha04

25 בינואר 2023

התכונות androidx.activity:activity:1.7.0-alpha04, androidx.activity:activity-compose:1.7.0-alpha04 וגם androidx.activity:activity-ktx:1.7.0-alpha04 משוחררות. גרסה 1.7.0-alpha04 מכילה את ההצהרות האלה על ביצוע שינויים.

תכונות חדשות

  • בהסכמי תוצאות הפעילות PickVisualMedia ו-PickMultipleVisualMedia, המערכת תשתמש מעכשיו בכלי לבחירת תמונות שמסופק על ידי Google Play Services, אם הוא זמין, במקרים שבהם המערכת של Android מספקת כלי לבחירת תמונות (למשל, MediaStore.ACTION_PICK_IMAGES) לא זמין. ה-API ‏isPhotoPickerAvailable() שמזהה רק את הכלי לבחירת תמונות שסופק על ידי מערכת Android הוצא משימוש. מומלץ להשתמש ב-API החדש isPhotoPickerAvailable(Context), שיחזיר נתונים אם אחד מהכלי לבחירת תמונות יהיה זמין. (I55be6)

גרסה 1.7.0-alpha03

11 בינואר 2023

התכונות androidx.activity:activity:1.7.0-alpha03, androidx.activity:activity-compose:1.7.0-alpha03 וגם androidx.activity:activity-ktx:1.7.0-alpha03 משוחררות. גרסה 1.7.0-alpha03 כוללת את ההצהרות האלה.

תכונות חדשות

  • עכשיו ל-ComponentDialog יש הטמעה של SavedStateRegistryOwner, יש לו גישה ל-SavedStateRegistry שלו והוא מגדיר את SavedStateRegistryOwner ל-ViewTree שלו. עכשיו אפשר להשתמש ב-Jetpack Compose ב-ComponentDialog כי הוא עומד בדרישות של LifecycleOwner ושל SavedStateRegistryOwner שמצורפים לחלון דרך ממשקי ה-API של ViewTree. (Idca17, ‏ I73468 b/261162296)

שינויים ב-API

  • נוספה רכיב ReportDrawn שסומן באופן מיידי את הפעילות כ'מוכנה לקריאה ל-reportFullyDrawn'. (Ic5b14, ‏ b/259687964)

המרות ב-Kotlin

  • הכיתות ActvitiyResultCallback ו-OnBackPressedCallback הומרו ל-Kotlin תוך שמירה על תאימות למקור ולקובץ הבינארי. (Ifc5e5, ‏ Ide1b0, ‏ b/257291701)

גרסה 1.7.0-alpha02

24 באוקטובר 2022

התכונות androidx.activity:activity:1.7.0-alpha02, androidx.activity:activity-compose:1.7.0-alpha02 וגם androidx.activity:activity-ktx:1.7.0-alpha02 משוחררות. גרסה 1.7.0-alpha02 מכילה את ההצהרות האלה.

תיקוני באגים

  • מפעילות 1.6.1: תוקנה בעיה שבה חוזה התוצאה של הפעילות PickMultipleVisualMedia לא הופעל במכשירי Android R כשמשתמשים בערך ברירת המחדל של maxItems. (Ie2776, ‏ b/249182130)

גרסה 1.7.0-alpha01

5 באוקטובר 2022

התכונות androidx.activity:activity:1.7.0-alpha01, androidx.activity:activity-compose:1.7.0-alpha01 וגם androidx.activity:activity-ktx:1.7.0-alpha01 משוחררות. גרסה 1.7.0-alpha01 כוללת את ההוספות האלה.

ממשקי API של FullyDrawnReporter

ComponentActivity מספק עכשיו מכונה של FullyDrawnReporter שמאפשרת לרכיבים מרובים לדווח כשהם מוכנים לאינטראקציה. ComponentActivity יחכה עד שכל הרכיבים יסתיימו לפני שיפעיל את reportFullyDrawn() בשמכם. ממשקי ה-API האלה מטפלים בדרישות התזמון בשבילכם, ואין צורך לבצע קריאה אליהם כחלק מקריאה ל-onDraw.

מומלץ להפעיל את ממשקי ה-API האלה כדי:

  • שליחת אות ל-Android Runtime בסיום ההפעלה, כדי לוודא שכל הקוד שפועל במהלך רצף הפעלה של כמה פריימים נכלל בעדיפות גבוהה לצורך הידור ברקע.
  • שליחת אות ל-Macrobenchmark ול-Play Vitals כשהאפליקציה נחשבת כמוצגת במלואה למדדי ההפעלה הראשונית, כדי שתוכלו לעקוב אחרי הביצועים.

הוספנו שני ממשקי Activity Compose API כדי שיהיה קל יותר להשתמש ב-FullyDrawnReporter מרכיבים בודדים:

  • ReportDrawnWhen מקבלת תנאי (למשל, list.count > 0) כדי לציין מתי הרכיב המודולרי מוכן לאינטראקציה.
  • ReportDrawnAfter מקבלת שיטה להשהיה, וכשהיא מסתיימת, היא מציינת שאתם מוכנים לאינטראקציה.

גרסה 1.6.1

גרסה 1.6.1

24 באוקטובר 2022

התכונות androidx.activity:activity:1.6.1, androidx.activity:activity-compose:1.6.1 וגם androidx.activity:activity-ktx:1.6.1 משוחררות. גרסה 1.6.1 כוללת את ההצהרות האלה על ביצוע שינויים (commits).

תיקוני באגים

  • תוקנה בעיה שבה חוזה התוצאה של הפעילות PickMultipleVisualMedia לא הופעל במכשירי Android R כשמשתמשים בערך ברירת המחדל של maxItems. (Ie2776, ‏ b/249182130)

גרסה 1.6.0

גרסה 1.6.0

21 בספטמבר 2022

התכונות androidx.activity:activity:1.6.0, androidx.activity:activity-compose:1.6.0 וגם androidx.activity:activity-ktx:1.6.0 משוחררות. גרסה 1.6.0 כוללת את ההצהרות האלה.

שינויים חשובים מאז גרסה 1.5.0

  • הוספנו את ActivityResultContracts.PickVisualMedia ו-ActivityResultContracts.PickMultipleVisualMedia כדי לספק חוזה עם תאימות לאחור, שמשתמש ב-MediaStore.ACTION_PICK_IMAGES כשבורר התמונות זמין וב-Intent.ACTION_OPEN_DOCUMENT כשהוא לא זמין.
  • שילבנו את OnBackInvokedCallback ב-Android 13 ב-OnBackPressedDispatchers ש-ComponentActivity ו-ComponentDialog מספקים. כך מוודאים שכל ממשקי ה-API שמבוססים על OnBackPressedDispatcher יפעלו כשמפעילים תנועת חזרה חזותית.

גרסה 1.6.0-rc02

7 בספטמבר 2022

התכונות androidx.activity:activity:1.6.0-rc02, androidx.activity:activity-compose:1.6.0-rc02 וגם androidx.activity:activity-ktx:1.6.0-rc02 משוחררות. גרסה 1.6.0-rc02 מכילה את ההוספות האלה.

תיקוני באגים

  • OnBackPressedDispatcher רושם עכשיו את OnBackInvokedCallback עם PRIORITY_DEFAULT במקום PRIORITY_OVERLAY. (I3901f)
  • מעכשיו, תמיד יישלחו שתי הפונקציות החוזרות של onMultiWindowModeChanged() בכיתות שמתבססות על ComponentActivity. (Ic4d85)
  • הפונקציה ActivityResultRegistry לא תחזיר יותר תוצאה לפונקציה ActivityResultCallback כשהקריאה ל-launch תגרום להשלכת Exception והקריאה החוזרת (callback) נרשמה ללא LifecycleOwner. (Ia7ff7, ‏ b/238350794)
  • עכשיו ComponentActivity תפנה כראוי את הקריאות לתפריט בלי צורך לקרוא לפונקציית הסופר בפעילות. (Ie33c5, ‏ b/238057118)

עדכון יחסי תלות

גרסה 1.6.0-rc01

24 באוגוסט 2022

התכונות androidx.activity:activity:1.6.0-rc01, androidx.activity:activity-compose:1.6.0-rc01 וגם androidx.activity:activity-ktx:1.6.0-rc01 משוחררות. גרסה 1.6.0-rc01 כוללת את השמירות האלה.

תיקוני באגים

  • לא תהיה יותר בעיה של ClassVerificationError כשמפעילים את OnBackPressedDispatcher בגרסאות SDK שקודמות ל-33. (Ic32e1)
  • מעכשיו, תמיד יישלחו קריאות חזרה (callbacks) של כיתות שמחליפות את קריאת החזרה (callback) onPictureInPictureModeChanged() של ComponentActivity. (Ib7fdb)

גרסה 1.6.0-beta01

10 באוגוסט 2022

התכונות androidx.activity:activity:1.6.0-beta01, androidx.activity:activity-compose:1.6.0-beta01 וגם androidx.activity:activity-ktx:1.6.0-beta01 משוחררות. גרסה 1.6.0-beta01 מכילה את ההצהרות האלה על ביצוע שינויים (commits).

שינויים ב-API

  • סימנו את השיטות startActivityForResult ו-startIntentSenderForResult ב-ComponentActivity שהוצאו משימוש ב-@NonNull, כי העברה של null תמיד הסתיימה בקריסה. (Id2a25, ‏ b/231476082)

תיקוני באגים

  • מפעילות 1.5.1: ה-ActivityResultRegistry לא יחזיר יותר תוצאה ל-ActivityResultCallback כשהקריאה ל-launch תגרום להשלכה של Exception והקריאה החוזרת (call back) נרשמה ללא LifecycleOwner. (Ia7ff7, ‏ b/238350794)
  • מפעילות 1.5.1: ComponentActivity יפנה עכשיו כראוי את הקריאות לתפריט להחרגות של onPrepareOptionMenu(),‏ onCreateOptionsMenu() ו-onOptionsItemSelected(), בלי צורך לקרוא לפונקציית הסופר. (Ie33c5, ‏ b/238057118)

עדכון יחסי תלות

גרסה 1.6.0-alpha05

15 ביוני 2022

התכונות androidx.activity:activity:1.6.0-alpha05, androidx.activity:activity-compose:1.6.0-alpha05 וגם androidx.activity:activity-ktx:1.6.0-alpha05 משוחררות. הגרסה 1.6.0-alpha05 פותחה בהסתעפות פרטית לפני השקה, ואין לה התחייבויות ציבוריות.

שינויים ב-API

  • minCompileSdk היא עכשיו 33 כדי להתאים ל-SDK של Tiramisu Beta 3

תיקוני באגים

  • תוקן קריסה במכשירים ישנים יותר במהלך בדיקת התוסף של ה-SDK עבור PickVisualMedia ActivityResultContract, כך שהוא אמור לפעול עכשיו עם ACTION_OPEN_DOCUMENT במכשירים עם Android מגרסה 10 ומטה.

גרסה 1.6.0-alpha04

18 במאי 2022

androidx.activity:activity:1.6.0-alpha04 ו-androidx.activity:activity-ktx:1.6.0-alpha04 משוחררים.

תיקוני באגים

  • תוקנה שגיאה ב-PickVisualMediaRequest שבה ניסיון ליצור בקשה, דרך ה-Builder או דרך פונקציית Kotlin ברמה העליונה, היה מוביל לחריגה מ-stack.
  • שילבנו את OnBackInvokedCallback ב-Android 13 Dev Beta 2 ב-OnBackPressedDispatcher שסופק על ידי ComponentDialog. כך מוודאים שכל ממשקי ה-API שנוצרו על סמך OnBackPressedDispatcher יפעלו כשמפעילים את האפשרות של תנועת חזרה חזוי.

גרסה 1.6.0-alpha03

27 באפריל 2022

התכונות androidx.activity:activity:1.6.0-alpha03, androidx.activity:activity-compose:1.6.0-alpha03 וגם androidx.activity:activity-ktx:1.6.0-alpha03 משוחררות.

  • הערה: הגרסה הזו תעבור הידור רק מול Android 13 Developer Beta 1 SDK.

תכונות חדשות

  • הוספנו את ActivityResultContracts.PickVisualMedia ו-ActivityResultContracts.PickMultipleVisualMedia כדי לספק חוזה עם תאימות לאחור, שמשתמש ב-MediaStore.ACTION_PICK_IMAGES כשבורר התמונות זמין וב-Intent.ACTION_OPEN_DOCUMENT כשהוא לא זמין.
  • שילבו את OnBackInvokedCallback ב-Android 13 Dev Beta 1 ב-OnBackPressedDispatcher שסופק על ידי ComponentActivity. כך מוודאים שכל ממשקי ה-API שנוצרו על סמך OnBackPressedDispatcher יפעלו כשמפעילים את האפשרות של תנועת חזרה חזוי.

גרסה 1.6.0-alpha01

23 במרץ 2022

התכונות androidx.activity:activity:1.6.0-alpha01, androidx.activity:activity-compose:1.6.0-alpha01 וגם androidx.activity:activity-ktx:1.6.0-alpha01 משוחררות.

  • הערה: הגרסה הזו תעבור הידור רק מול Android 13 Developer Preview 2 SDK.

תכונות חדשות

  • שינויים ששולבו ב-ComponentActivity מ-Android 13 Dev Preview 2.

גירסה 1.5.1

גירסה 1.5.1

27 ביולי 2022

התכונות androidx.activity:activity:1.5.1, androidx.activity:activity-compose:1.5.1 וגם androidx.activity:activity-ktx:1.5.1 משוחררות. גרסה 1.5.1 מכילה את ההצהרות האלה על ביצוע שינויים (commits).

תיקוני באגים

  • הפונקציה ActivityResultRegistry לא תחזיר יותר תוצאה ל-ActivityResultCallback כשהקריאה ל-launch() תגרום להשלכת Exception והקריאה החוזרת (call back) נרשמה ללא LifecycleOwner. (Ia7ff7, ‏ b/238350794)

  • עכשיו ComponentActivity תפנה כראוי את הקריאות לתפריט לשינויי ברירת המחדל של onPrepareOptionMenu(), onCreateOptionsMenu() ו-onOptionsItemSelected(), בלי צורך לקרוא לפונקציית הסופר. (Ie33c5, ‏ b/238057118)

עדכון יחסי תלות

גרסה 1.5.0

גרסה 1.5.0

29 ביוני 2022

התכונות androidx.activity:activity:1.5.0, androidx.activity:activity-compose:1.5.0 וגם androidx.activity:activity-ktx:1.5.0 משוחררות. גרסה 1.5.0 כוללת את השמירות האלה.

שינויים חשובים מאז גרסה 1.4.0

  • ComponentDialogComponentDialog הוא תת-סוג של Dialog שכולל OnBackPressedDispatcher שיופעל כשלוחצים על לחצן החזרה במערכת והתיבת הדו-שיח גלויה. חשוב לציין שהמחלקה המשנית הזו גם מגדירה את ViewTreeOnBackPressedDispatcherOwner, ומאפשרת לתצוגות דרך גנרית לאחזר את המפנה הנכון, בין שהוא קיים ב-ComponentActivity ובין שהוא קיים ב-ComponentDialog.
  • ממשקי קריאה חוזרתComponentActivity מטמיע עכשיו קבוצה של ממשקי קריאה חוזרת מודולריים שאפשר להשתמש בהם במקום בקריאות החזרה של Activity. הממשקים האלה כוללים את: OnNewIntentProvider, ‏ OnConfigurationChangedProvider, ‏ OnTrimMemoryProvider, ‏ OnPictureInPictureModeChangedProvider, ‏ OnMultiWindowModeChangedProvider
  • שילוב עם CreationExtras – עכשיו יש ל-ComponentActivity אפשרות לספק ViewModelProvider.Factory ללא מצב (stateless) דרך CreationExtras של 2.5.0 לניהול מחזור חיים.

שינויים אחרים

  • ה-constructor ללא פרמטרים של ActivityResultContracts.CreateDocument הוצא משימוש והוחלף ב-constructor חדש שמקבל סוג mime ספציפי (למשל, 'image/png') כפי שנדרש על ידי Intent.ACTION_CREATE_DOCUMENT.

גרסה 1.5.0-rc01

11 במאי 2022

הגרסאות androidx.activity:activity:1.5.0-rc01, ‏androidx.activity:activity-compose:1.5.0-rc01 ו-androidx.activity:activity-ktx:1.5.0-rc01 פורסמו ללא שינויים מהגרסה 1.5.0-beta01. גרסה 1.5.0-rc01 כוללת את השמירות האלה.

גרסה 1.5.0-beta01

20 באפריל 2022

התכונות androidx.activity:activity:1.5.0-beta01, androidx.activity:activity-compose:1.5.0-beta01 וגם androidx.activity:activity-ktx:1.5.0-beta01 משוחררות. גרסה 1.5.0-beta01 כוללת את ההצהרות האלה.

עדכוני יחסי תלות

גרסה 1.5.0-alpha05

6 באפריל 2022

התכונות androidx.activity:activity:1.5.0-alpha05, androidx.activity:activity-compose:1.5.0-alpha05 וגם androidx.activity:activity-ktx:1.5.0-alpha05 משוחררות. גרסה 1.5.0-alpha05 מכילה את ההוספות האלה.

תיקוני באגים

  • השיטה onPanelClosed() של ComponentActivity קוראת עכשיו גם ל-super onPanelClosed(), וכך נפתרה בעיה שבה לא הייתה קריאה לשיטה onContextMenuClosed. (Ib6f77)

גרסה 1.5.0-alpha04

23 במרץ 2022

התכונות androidx.activity:activity:1.5.0-alpha04, androidx.activity:activity-compose:1.5.0-alpha04 וגם androidx.activity:activity-ktx:1.5.0-alpha04 משוחררות. גרסה 1.5.0-alpha04 מכילה את ההצהרות האלה.

תיקוני באגים

  • עכשיו יש תמיכה ב-SavedStateViewFactory בשימוש ב-CreationExtras גם אם הוא הופעל באמצעות SavedStateRegistryOwner. אם מציינים פרמטרים נוספים, המערכת תתעלם מהארגומנטים שהועברו ל-init. (I6c43b, b/224844583)

גרסה 1.5.0-alpha03

23 בפברואר 2022

התכונות androidx.activity:activity:1.5.0-alpha03, androidx.activity:activity-compose:1.5.0-alpha03 וגם androidx.activity:activity-ktx:1.5.0-alpha03 משוחררות. גרסה 1.5.0-alpha03 מכילה את ההצהרות האלה.

שינויים ב-API

  • עכשיו אפשר להעביר את CreationExtras לפונקציה by viewModels() של הפעילות (I6a3e6, ‏ b/217600303)

גרסה 1.5.0-alpha02

9 בפברואר 2022

התכונות androidx.activity:activity:1.5.0-alpha02, androidx.activity:activity-compose:1.5.0-alpha02 וגם androidx.activity:activity-ktx:1.5.0-alpha02 משוחררות. גרסה 1.5.0-alpha02 כוללת את ההוספות האלה.

תכונות חדשות

  • ComponentActivity מטמיע עכשיו את הממשק OnPictureInPictureModeChangedProvider כדי לאפשר לכל רכיב לקבל אירועים של שינוי במצב 'תמונה בתוך תמונה'. (I9f567)
  • ComponentActivity מטמיע עכשיו את הממשק OnMultiWindowModeChangedProvider כדי לאפשר לכל רכיב לקבל אירועים של שינוי מצב בחלונות מרובים. (I62d91)

גרסה 1.5.0-alpha01

26 בינואר 2022

התכונות androidx.activity:activity:1.5.0-alpha01, androidx.activity:activity-compose:1.5.0-alpha01 וגם androidx.activity:activity-ktx:1.5.0-alpha01 משוחררות. גרסה 1.5.0-alpha01 כוללת את ההצהרות האלה.

תכונות חדשות

  • ComponentActivity משתלב עכשיו עם ViewModel CreationExtras, שהוצג כחלק מ-Lifecycle 2.5.0-alpha01. (Ie7e00, ‏ b/207012584)
  • נוספה ComponentDialog, קבוצת משנה של Dialog שכוללת OnBackPressedDispatcher שיופעל כשלוחצים על לחצן החזרה של המערכת כשתיבת הדו-שיח גלויה. חשוב לציין שגם המחלקה המשנית הזו מגדירה את ViewTreeOnBackPressedDispatcherOwner, ומאפשרת לתצוגות לקבל את המפנה הנכון באופן כללי, בין שהוא קיים ב-ComponentActivity ובין שהוא קיים ב-ComponentDialog. (I8a1bc)
  • ComponentActivity מטמיע עכשיו את הממשק החדש OnNewIntentProvider כדי לאפשר לכל רכיב לקבל את האירועים האלה. (If1f8b)
  • ComponentActivity מטמיע עכשיו את הממשק החדש OnConfigurationChangedProvider כדי לאפשר לכל רכיב לקבל את האירועים האלה. (If623b)
  • ComponentActivity מטמיע עכשיו את הממשק החדש של OnTrimMemoryProvider כדי לאפשר לכל רכיב לקבל את האירועים האלה. (Ia9295)

שינויים ב-API

  • ה-constructor ללא פרמטרים של ActivityResultContracts.CreateDocument הוצא משימוש והוחלף ב-constructor חדש שמקבל סוג mime ספציפי (למשל, "image/png") כפי שנדרש על ידי Intent.ACTION_CREATE_DOCUMENT. (I2bec6)
  • עכשיו אפשר לאחזר את הערך של OnBackPressedDispatcherOwner שמשויך לתצוגה המפורטת דרך ViewTreeOnBackPressedDispatcherOwner, במקום להסתמך על העברה (cast) של Context. (I74685)

תיקוני באגים

  • תוקן קריסה שנגרמה בגישה ל-ViewModel בפעם הראשונה מ-registerForActivityResult() חזרה (callback) או מחזרות (callbacks) ל-LifecycleObserver שנוספו כחלק מ-init של ComponentActivity. (Ife83f)

גרסה 1.4.0

גרסה 1.4.0

27 באוקטובר 2021

התכונות androidx.activity:activity:1.4.0, androidx.activity:activity-compose:1.4.0 וגם androidx.activity:activity-ktx:1.4.0 משוחררות. גרסה 1.4.0 כוללת את ההצהרות האלה.

שינויים חשובים מאז גרסה 1.3.0

  • AndroidX ComponentActivity מטמיע עכשיו את הממשק MenuHost. כך כל רכיב יכול להוסיף פריטים לתפריט ActionBar על ידי הוספת מופע MenuProvider לפעילות. אפשר להוסיף לכל MenuProvider Lifecycle שישלוט באופן אוטומטי בחשיפה של פריטי התפריט האלה על סמך מצב ה-Lifecycle, ויטפל בהסרת ה-MenuProvider כשה-Lifecycle נהרס.
  • הכיתה ActivityResultContract נכתבה מחדש ב-Kotlin כדי להבטיח שמפתחים שכותבים חוזים מותאמים אישית ב-Kotlin יוכלו להגדיר את האפשרות הנכונה של ערך null לכיתות הקלט והפלט שלהם.
  • הכיתה ActivityResultContracts והחוזים שלה נכתבו מחדש ב-Kotlin כדי להבטיח את הנכונות של הערך null.

גרסה 1.4.0-rc01

13 באוקטובר 2021

התכונות androidx.activity:activity:1.4.0-rc01, androidx.activity:activity-compose:1.4.0-rc01 וגם androidx.activity:activity-ktx:1.4.0-rc01 משוחררות. גרסה 1.4.0-rc01 כוללת את השמירות האלה.

תיקוני באגים

  • הפונקציה ActivityResultRegistry לא תחזיר יותר תוצאה ל-ActivityResultCallback כשהקריאה ל-launch תגרום להשלכת Exception. (If4f91, ‏ b/200845664)

גרסה 1.4.0-beta01

29 בספטמבר 2021

התכונות androidx.activity:activity:1.4.0-beta01, androidx.activity:activity-compose:1.4.0-beta01 וגם androidx.activity:activity-ktx:1.4.0-beta01 משוחררות. גרסה 1.4.0-beta01 מכילה את ההוספות האלה.

שינויים ב-API

  • תוקן הסוג של ActivityResultContracts.OpenMultipleDocuments ו-ActivityResultContracts.GetMultipleContents שגרם לשימוש בסוג פלט של List<? extends Uri> כשמשתמשים בקוד משפת התכנות Java. (If71de)
  • עכשיו אפשר לגשת למשתנים הקבועים הציבוריים בתוך הכיתות ActivityResultContracts.StartActivityForResult, ‏ ActivityResultContracts.StartIntentSenderForResult ו-ActivityResultContracts.RequestMultiplePermissions כשמשתמשים ב-Kotlin, דרך אובייקטי Companion שהם עכשיו ציבוריים. (aosp/1832555)

עדכונים במסמכי התיעוד

  • הוספנו פרטים נוספים להודעת ההוצאה משימוש לגבי ממשקי ה-API שמנוהלים עכשיו על ידי Activity Result APIs, כלומר startActivityForResult,‏ startIntentSenderForResult,‏ onActivityResult,‏ requestPermissions ו-onRequestPermissionsResult. (cce80f)

גרסה 1.4.0-alpha02

15 בספטמבר 2021

התכונות androidx.activity:activity:1.4.0-alpha02, androidx.activity:activity-compose:1.4.0-alpha02 וגם androidx.activity:activity-ktx:1.4.0-alpha02 משוחררות. גרסה 1.4.0-alpha02 מכילה את ההצהרות האלה.

תכונות חדשות

  • הארטיפקט activity-compose מכיל עכשיו שגיאת איתור שגיאות בקוד (lint) מסוג LaunchDuringComposition, שמונעת קריאה ל-method‏ launch של ActivityResultLauncher כחלק מההרכבה, כי ההרכבה אמורה להיות ללא תופעות לוואי. שימוש בממשקי ה-API לטיפול בתופעות לוואי. (7c2bbe, ‏ b/191347220)

שינויים ב-API

  • הכיתה ActivityResultContract נכתבה מחדש ב-Kotlin כדי להבטיח שמפתחים שכותבים חוזים מותאמים אישית ב-Kotlin יוכלו להגדיר את האפשרות הנכונה של ערך null לכיתות הקלט והפלט שלהם. (I8a8f5)
  • הכיתה ActivityResultContracts והחוזים שלה נכתבו מחדש ב-Kotlin כדי להבטיח את היכולת לבדוק אם הערך יכול להיות null. (I69802)

גרסה 1.4.0-alpha01

1 בספטמבר 2021

התכונות androidx.activity:activity:1.4.0-alpha01, androidx.activity:activity-compose:1.4.0-alpha01 וגם androidx.activity:activity-ktx:1.4.0-alpha01 משוחררות. גרסה 1.4.0-alpha01 מכילה את ההצהרות האלה על ביצוע שינויים (commits).

תכונות חדשות

  • AndroidX ComponentActivity מטמיע עכשיו את הממשק MenuHost. כך כל רכיב יכול להוסיף פריטים לתפריט ActionBar על ידי הוספת מופע MenuProvider לפעילות. אפשר להוסיף לכל MenuProvider Lifecycle שישלוט באופן אוטומטי בחשיפה של פריטי התפריט האלה על סמך מצב ה-Lifecycle, ויטפל בהסרת ה-MenuProvider כשה-Lifecycle נהרס. (I3b608):
/**
  * Using the addMenuProvider() API directly in your Activity
  **/
class ExampleActivity : ComponentActivity(R.layout.activity_example) {

  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)

    // Add menu items without overriding methods in the Activity
   addMenuProvider(object : MenuProvider {
      override fun onCreateMenu(menu: Menu, menuInflater: MenuInflater) {
        // Add menu items here
        menuInflater.inflate(R.menu.example_menu, menu)
      }

      override fun onMenuItemSelected(menuItem: MenuItem): Boolean {
        // Handle the menu selection
        return true
      }
    })
  }
}

/**
  * Using the addMenuProvider() API in a Fragment
  **/
class ExampleFragment : Fragment(R.layout.fragment_example) {

  override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
    // The usage of an interface lets you inject your own implementation
    val menuHost: MenuHost = requireActivity()
  
    // Add menu items without using the Fragment Menu APIs
    // Note how we can tie the MenuProvider to the viewLifecycleOwner
    // and an optional Lifecycle.State (here, RESUMED) to indicate when
    // the menu should be visible
    menuHost.addMenuProvider(object : MenuProvider {
      override fun onCreateMenu(menu: Menu, menuInflater: MenuInflater) {
        // Add menu items here
        menuInflater.inflate(R.menu.example_menu, menu)
      }

      override fun onMenuItemSelected(menuItem: MenuItem): Boolean {
        // Handle the menu selection
        return true
      }
    }, viewLifecycleOwner, Lifecycle.State.RESUMED)
  }

שינויים בהתנהגות

  • מעכשיו, ה-ActivityResultRegistry יגרום להודעת השגיאה IllegalStateException כשמנסים להפעיל את launch() ב-ActivityResultLauncher שלא נרשם או שנרשם ולא רשום יותר. (Ida75d, ‏ b/192567522)

תרומה חיצונית

  • תודה ל-dmitrilc על תיקון שגיאת הקלדה במסמכי התיעוד של ActivityResult. (#221)

גרסה 1.3.1

גרסה 1.3.1

4 באוגוסט 2021

התכונות androidx.activity:activity:1.3.1, androidx.activity:activity-compose:1.3.1 וגם androidx.activity:activity-ktx:1.3.1 משוחררות. גרסה 1.3.1 מכילה את השמירות האלה.

עדכוני יחסי תלות

  • הפעילות תלויה עכשיו ב-Kotlin 1.5.21.
  • Activity Compose תלוי עכשיו ב-Compose 1.0.1.

גרסה 1.3.0

גרסה 1.3.0

28 ביולי 2021

התכונות androidx.activity:activity:1.3.0, androidx.activity:activity-compose:1.3.0 וגם androidx.activity:activity-ktx:1.3.0 משוחררות. גרסה 1.3.0 כוללת את ההצהרות האלה.

שינויים חשובים מאז גרסה 1.2.0

  • פריט Compose של פעילות – פריט ה-activity-compose מספק את שיטת התוסף setContent לאירוח ממשק המשתמש של Jetpack Compose בפעילות, ורכיבי עטיפה ספציפיים של Compose ליצירת אינטראקציה עם ממשקי ה-API של ComponentActivity לטיפול בלחצן החזרה אחורה במערכת ובממשקי ה-API של תוצאות הפעילות. פרטים נוספים זמינים במסמכי התיעוד.
  • חוזה CaptureVideo – ה-CaptureVideo ActivityResultContract מחליף את החוזה TakeVideo שהוצא משימוש, ומחזיר ערך בוליאני שמציין הצלחה שפועל במספר רב של אפליקציות מצלמה.
  • מעקב אחר תצוגת ההצעה 'תמונה בתוך תמונה' – משתמשי activity-ktx יכולים להשתמש עכשיו בשיטת התוסף trackPipAnimationHintView ב-Activity כדי ליצור מחדש באופן אוטומטי את PictureInPictureParams עם המיקום החדש של התצוגה כשהיא משתנה ביחס לחלון.

גרסה 1.3.0-rc02

14 ביולי 2021

התכונות androidx.activity:activity:1.3.0-rc02, androidx.activity:activity-compose:1.3.0-rc02 וגם androidx.activity:activity-ktx:1.3.0-rc02 משוחררות. גרסה 1.3.0-rc02 כוללת את ההוספות האלה.

תיקוני באגים

  • מעכשיו, פונקציות ה-callbacks של ActivityResultRegistry נשמרות ומשוחזרות בצורה תקינה, כך שלא מתבצעת כפילות של פונקציות ה-callbacks ב-savedState. (I97816, ‏ b/191893160)

גרסה 1.3.0-rc01

1 ביולי 2021

הגרסאות androidx.activity:activity:1.3.0-rc01,‏ androidx.activity:activity-compose:1.3.0-rc01 ו-androidx.activity:activity-ktx:1.3.0-rc01 פורסמו ללא שינויים מ-1.3.0-beta02. גרסה 1.3.0-rc01 כוללת את ההצהרות האלה.

גרסה 1.3.0-beta02

16 ביוני 2021

התכונות androidx.activity:activity:1.3.0-beta02, androidx.activity:activity-compose:1.3.0-beta02 וגם androidx.activity:activity-ktx:1.3.0-beta02 משוחררות. גרסה 1.3.0-beta02 מכילה את ההצהרות האלה.

עודכנה ההגדרה activity-compose כך שתהיה תלויה ב-Compose 1.0.0-beta09. עכשיו יש ל-androidx.compose.ui:ui-test-junit4 תלות ב-activity-compose בזמן הידור.

גרסה 1.3.0-beta01

2 ביוני 2021

התכונות androidx.activity:activity:1.3.0-beta01, androidx.activity:activity-compose:1.3.0-beta01 וגם androidx.activity:activity-ktx:1.3.0-beta01 משוחררות. גרסה 1.3.0-beta01 מכילה את ההצהרות האלה.

שינויים ב-API

  • השיטה @Composable registerForActivityResult() הוצאה משימוש. יש להשתמש ב-rememberLauncherForActivityResult(). (Ic39d3)

גרסה 1.3.0-alpha08

18 במאי 2021

התכונות androidx.activity:activity:1.3.0-alpha08, androidx.activity:activity-compose:1.3.0-alpha08 וגם androidx.activity:activity-ktx:1.3.0-alpha08 משוחררות. גרסה 1.3.0-alpha08 מכילה את ההצהרות האלה.

תכונות חדשות

  • הפונקציה החדשה CaptureVideo ActivityResultContract מחזירה ערך בוליאני ל-ActivityResultCallback, שמציין אם הסרטון נשמר בהצלחה ב-URI שצוין. הבקשה הזו מחליפה את החוזה TakeVideo שהוצא משימוש, כי אפליקציות מצלמה תומכות בהחזרת קובץ bitmap של תמונה ממוזערת רק לעיתים רחוקות, ולכן התוצאה לא מועילה. (Ie21f2, ‏ b/185938070)
  • נוספה ממשק API חדש Activity#setPipAnimationHintView כדי לעדכן את ההצעה של PipParams למקור של מלבן המקור בכל פעם שהתצוגה זזה. (I9063d)

שינויים ב-API

  • הפונקציה rememberLauncherForActivityResult מחזירה עכשיו מרכז אפליקציות שמפסיק את השימוש בפונקציה unregister() – הרישום והביטול של הרישום של מרכז האפליקציות מתבצע באופן אוטומטי על ידי rememberLauncherForActivityResult. (I2443e)

תאימות ל-Compose

  • androidx.activity:activity-compose:1.3.0-alpha08 תואם רק ל-Compose בגרסה 1.0.0-beta07 ואילך.

גרסה 1.3.0-alpha07

21 באפריל 2021

התכונות androidx.activity:activity:1.3.0-alpha07, androidx.activity:activity-compose:1.3.0-alpha07 וגם androidx.activity:activity-ktx:1.3.0-alpha07 משוחררות. גרסה 1.3.0-alpha07 מכילה את ההצהרות האלה.

תיקוני באגים

  • עכשיו, הפונקציה rememberLauncherForActivityResult מחזירה הפניה יציבה לאותה מכונה של ActivityResultLauncher, גם אם החוזה משתנה בגלל שינויים בהרכב. (Id2d6d)
  • שימוש בגרסאות לא יציבות של Fragments מעל 1.3.0 לא יגרום יותר לשגיאת איתור שגיאות בקוד (lint) שגויה, שבה יצוין שצריך להשתמש ב-1.3.0. (aosp/1670206, ‏ b/184847092)

גרסה 1.3.0-alpha06

7 באפריל 2021

התכונות androidx.activity:activity:1.3.0-alpha06, androidx.activity:activity-compose:1.3.0-alpha06 וגם androidx.activity:activity-ktx:1.3.0-alpha06 משוחררות. גרסה 1.3.0-alpha06 מכילה את ההצהרות האלה.

שינויים ב-API

  • שם ה-API של registerForActivityResult() השתנה ל-rememberLauncherForActivityResult() כדי לציין בצורה טובה יותר ש-ActivityResultLauncher המוחזר הוא אובייקט מנוהל שנשמר בשמכם. ניסיון לקרוא ל-unregister עם הערך המוחזר של ActivityResultLauncher יגרום להודעת שגיאה. (I2bb6d)
  • הפונקציות LocalOnBackPressedDispatcherOwner.current ו-LocalActivityResultRegistryOwner.current מחזירות ערך שאפשר להעביר אותו כ-null כדי לקבוע טוב יותר אם הוא זמין בהרכב הנוכחי. ממשקי API שדורשים את ממשקי ה-API האלה, כמו BackHandler ו-rememberLauncherForActivityResult(), יגרמו עכשיו לשגיאה תיאורית יותר אם הבעלים הבסיסי לא נמצא. NavHost פועל עכשיו גם אם לא נמצא OnBackPressedDispatcherOwner, למשל כשמציגים תצוגה מקדימה של NavHost. (I7d8b4)

תיקוני באגים

  • עכשיו, ה-BackHandler יפריע כראוי ללחיצות על לחצן החזרה לאחור במקרה שהפעילות היא STOPPED, ואז STARTED שוב, ונוספו קריאות חזרה אחרות עם LifecycleOwner. (I71de6, ‏ b/182284739)
  • שימוש בהרחבה של השיטה launch() עם ActivityResultContract בהתאמה אישית שיש לו קלט Unit לא יגרום יותר ל-NullPointerException (I76282, b/183837954)

גרסה 1.3.0-alpha05

24 במרץ 2021

התכונות androidx.activity:activity:1.3.0-alpha05, androidx.activity:activity-compose:1.3.0-alpha05 וגם androidx.activity:activity-ktx:1.3.0-alpha05 משוחררות. גרסה 1.3.0-alpha05 מכילה את ההצהרות האלה.

תיקוני באגים

  • מ-Activity 1.2.2: תוקנה בעיה בבדיקת האיתור של שגיאות בקוד (lint) של InvalidFragmentVersionForActivityResult שהובילה לתוצאה חיובית שגויה כשמשתמשים ב-Fragment 1.3.1 ואילך. (I54da1, ‏ b/182388985)
  • מ-Activity 1.2.2: ComponentActivity עכשיו נמנעת הצגת ClassNotFoundException כשמפעילים Intent מ-ActivityResultContract שהיה בעבר רכיב נוסף ב-Intent אחר. (Ieff05, ‏ b/182906230)

עדכוני יחסי תלות

גרסה 1.3.0-alpha04

10 במרץ 2021

התכונות androidx.activity:activity:1.3.0-alpha04, androidx.activity:activity-compose:1.3.0-alpha04 וגם androidx.activity:activity-ktx:1.3.0-alpha04 משוחררות. גרסה 1.3.0-alpha04 מכילה את ההצהרות האלה.

תיקוני באגים

  • מפעילות 1.2.1: הפונקציה RequestMultiplePermissions תמיד מחזירה עכשיו תוצאות לכל ההרשאות המבוקשות, במקום רק להרשאות שלא אושרו בעבר. (I50bc3, ‏ b/180884668)
  • מפעילות 1.2.1: ActivityResultRegistry מבטיח עכשיו שבקשות launch() בתהליך יבהירו את התוצאות שלהן גם אם תבצעו unregister() ואז register() שוב עם אותו מפתח. (I9ef34, ‏ b/181267562)
  • Activity Compose כבר לא מוסיף יחסי תלות של בדיקות למסלול הטעינה של סביבת זמן הריצה. (Ifd8b3)
  • תוקנה בעיה ב-BackHandler שבה עדיין נעשה שימוש ב-lambda של onBack שהוגדר בעבר אחרי הרכבת מחדש. (8eb5eb)

גרסה 1.3.0-alpha03

24 בפברואר 2021

התכונות androidx.activity:activity:1.3.0-alpha03, androidx.activity:activity-compose:1.3.0-alpha03 וגם androidx.activity:activity-ktx:1.3.0-alpha03 משוחררות. גרסה 1.3.0-alpha03 מכילה את ההצהרות האלה.

תכונות חדשות

  • עכשיו יש פונקציית Composable‏ registerForActivityResult לקבלת תוצאות מפעילויות בתוך רכיבים מורכבים. (Ia7851, ‏ b/172690553)

שינויים ב-API

  • ל-LocalOnBackPressedDispatcherOwner יש עכשיו פונקציות provides שאפשר להשתמש בהן עם CompositionLocalProvider, והן מחליפות את ה-API של asProvidableCompositionLocal(). (I45d24)

גרסה 1.3.0-alpha02

10 בפברואר 2021

התכונות androidx.activity:activity:1.3.0-alpha02, androidx.activity:activity-compose:1.3.0-alpha02 וגם androidx.activity:activity-ktx:1.3.0-alpha02 משוחררות. גרסה 1.3.0-alpha02 מכילה את ההצהרות האלה.

תיקוני באגים

  • תוקנה בעיה ב-Activity Compose 1.3.0-alpha01 שגורמת לחריגה מסוג NoSuchMethodError: No static method setContent כשמשתמשים ב-Compose 1.0.0-alpha12. כל המשתמשים ב-Compose צריכים להסתמך על גרסת 1.3.0-alpha02 ואילך. (b/179911234)

שינויים ב-API

  • אפשר להשתמש ב-API BackHandler כדי לאפשר ל-Composable ליירט את הלחצן 'הקודם' במערכת. (I58ed5, ‏ b/172154006)

גרסה 1.3.0-alpha01

10 בפברואר 2021

התכונות androidx.activity:activity:1.3.0-alpha01, androidx.activity:activity-compose:1.3.0-alpha01 וגם androidx.activity:activity-ktx:1.3.0-alpha01 משוחררות. גרסה 1.3.0-alpha01 כוללת את ההוספות האלה.

תכונות חדשות

  • הארטיפקט החדש activity-compose מספק רכיבי עזר ספציפיים ל-Jetpack Compose לממשקי API ספציפיים של androidx.activity.
    • ComponentActivity.setContent הועבר מ-androidx.compose.ui.platform.setContent ל-androidx.activity.compose.setContent. (Icf416)

בעיות מוכרות

  • שימוש ב-Activity Compose 1.3.0-alpha01 ובספריות שתלויות בו, כמו androidx.compose.ui:ui-test-junit4:1.0.0-alpha12, יוביל לחריגה מסוג NoSuchMethodError: No static method setContent. (b/179911234)

גרסה 1.2.4

גרסה 1.2.4

21 ביולי 2021

androidx.activity:activity:1.2.4 ו-androidx.activity:activity-ktx:1.2.4 משוחררים. גרסה 1.2.4 כוללת את ההצהרות האלה.

תיקוני באגים

  • מ-Activity 1.3.0-rc02: פונקציות ה-call back של ActivityResultRegistry נשמרות ומשוחזרות כראוי, כך שלא מתרחשת כפילות של פונקציות ה-call back ב-savedState. (I97816, ‏ b/191893160)

גרסה 1.2.3

גרסה 1.2.3

5 במאי 2021

androidx.activity:activity:1.2.3 ו-androidx.activity:activity-ktx:1.2.3 משוחררים. גרסה 1.2.3 מכילה את ההוספות האלה.

תיקוני באגים

  • שימוש בהרחבה של השיטה launch() עם ActivityResultContract בהתאמה אישית שיש לו קלט Unit לא יגרום יותר ל-NullPointerException (I76282, b/183837954)
  • תוקנה שגיאה של איתור שגיאות בקוד (lint) שהופיעה בטעות, והיא מבקשת להשתמש ב-Fragment‏ 1.3.0 כשמשתמשים ב-snapshot, ב-alpha, ב-beta או ב-RC build של גרסה חדשה יותר של Fragments. (f4a57e, ‏ b/184847092)

גרסה 1.2.2

גרסה 1.2.2

24 במרץ 2021

androidx.activity:activity:1.2.2 ו-androidx.activity:activity-ktx:1.2.2 משוחררים. גרסה 1.2.2 כוללת את השמירות האלה.

תיקוני באגים

  • תוקנה בעיה בבדיקת האיתור של שגיאות בקוד (lint) של InvalidFragmentVersionForActivityResult שהובילה לתוצאה חיובית שגויה כשמשתמשים ב-Fragment בגרסה 1.3.1 ואילך. (I54da1, ‏ b/182388985)
  • ComponentActivity עכשיו נמנעת ClassNotFoundException כשמפעילים Intent מ-ActivityResultContract שהיה בעבר כתוכן נוסף ב-Intent אחר. (Ieff05, ‏ b/182906230)

עדכוני יחסי תלות

גרסה 1.2.1

גרסה 1.2.1

10 במרץ 2021

androidx.activity:activity:1.2.1 ו-androidx.activity:activity-ktx:1.2.1 משוחררים. גרסה 1.2.1 מכילה את השמירות האלה.

תיקוני באגים

  • הפונקציה RequestMultiplePermissions תמיד מחזירה עכשיו תוצאות לכל ההרשאות המבוקשות, במקום רק להרשאות שלא ניתנו בעבר. (I50bc3, ‏ b/180884668)
  • ActivityResultRegistry מבטיחה עכשיו שבקשות launch() בתהליך יסופקו עם התוצאות שלהן, גם אם תבצעו unregister() ואז register() שוב עם אותו מפתח. (I9ef34, ‏ b/181267562)

גרסה 1.2.0

גרסה 1.2.0

10 בפברואר 2021

androidx.activity:activity:1.2.0 ו-androidx.activity:activity-ktx:1.2.0 משוחררים. גרסה 1.2.0 מכילה את ההוספות האלה.

שינויים משמעותיים מאז גרסה 1.1.0

  • Activity Result APIs: ComponentActivity מספק עכשיו ActivityResultRegistry שמאפשר לטפל בתהליכים מסוג startActivityForResult()+onActivityResult() וגם בתהליכים מסוג requestPermissions()+onRequestPermissionsResult() בלי לשנות את שיטות ה-Activity או ה-Fragment, מספק אבטחת סוגים משופרת באמצעות ActivityResultContract ומספק ווקים לבדיקת התהליכים האלה. כדאי לעיין במאמר המעודכן בנושא קבלת תוצאה מפעילות.
  • ContextAware: ComponentActivity מטמיע עכשיו את ContextAware, ומאפשר לכם להוסיף מופע OnContextAvailableListener אחד או יותר שיקבלו קריאה חוזרת (callback) לפני הבסיס Activity.onCreate().

    • תוסף Kotlin עם השהיה withContextAvailable() מאפשר להריץ בלוק ללא השהיה כשה-Context הופך לזמין ולהחזיר תוצאה.
    • ממשק ה-API הזה משמש את FragmentActivity ב-Fragment 1.3.0 כדי לשחזר את המצב של ה-FragmentManager. כל המאזינים שיתווספו לתת-כיתות של FragmentActivity יפעלו אחרי המאזין הזה.
    • ממשק ה-API הזה משמש את AppCompatActivity ב-AppCompat 1.3.0-alpha02 ואילך. כל המאזינים שיתווספו לתת-כיתות של AppCompatActivity יפעלו אחרי המאזין הזה.
  • תמיכה ב-ViewTree: ComponentActivity תומך עכשיו בממשקי ה-API ViewTreeLifecycleOwner.get(View),‏ ViewTreeViewModelStoreOwner.get(View) ו-ViewTreeSavedStateRegistryOwner שנוספו ב-Lifecycle 2.3.0 וב-SavedState 1.1.0, כך שהוא יחזיר את הפעילות כ-LifecycleOwner,‏ ViewModelStoreOwner ו-SavedStateRegistryOwner לכל תצוגה שנוספה ישירות ל-ComponentActivity.

  • reportFullyDrawn() backport – השיטה Activity של reportFullyDrawn() הועברה ל-ComponentActivity כדי לפעול בכל רמות ה-API. בנוסף, תוקן קריסה ב-API 19 והוספה מעקב אחר השיטה הזו בכל רמות ה-API.

גרסה 1.2.0-rc01

16 בדצמבר 2020

androidx.activity:activity:1.2.0-rc01 ו-androidx.activity:activity-ktx:1.2.0-rc01 משוחררים. גרסה 1.2.0-rc01 כוללת את ההוספות האלה.

תיקוני באגים

  • עכשיו ActivityResultRegistry תמיד משחזר את המצב המדויק שנשמר. (Idd56b)
  • הוספת מעקב ל-ComponentActivity.reportFullyDrawn (Ic7632)

תרומה חיצונית

  • ComponentActivity מבטל עכשיו את reportFullyDrawn(), ומאפשר לקרוא לו בכל רמות ה-API. בנוסף, תוקן קריסה שנגרמה כשקוראים ל-method הזה בלי ההרשאה המתאימה מהמערכת במכשירים עם API 19. תודה, Simon Schiller! (b/163239764, ‏ #103)

גרסה 1.2.0-beta02

2 בדצמבר 2020

androidx.activity:activity:1.2.0-beta02 ו-androidx.activity:activity-ktx:1.2.0-beta02 משוחררים. גרסה 1.2.0-beta02 מכילה את ההצהרות האלה.

תיקוני באגים

  • תוקנה בעיה שבה Activity Result API לא ימתין עד שהמצב של מחזור החיים יהיה STARTED לפני שהוא יספק תוצאות כשנרשם באמצעות Lifecycle. (I109ea)

תרומה חיצונית

  • עדכנו את המסמך של launch() כדי לציין במפורש שהוא עלול להוביל ל-ActivityNotFoundException. תודה Michał Zieliński! (aosp/1493580)

גרסה 1.2.0-beta01

1 באוקטובר 2020

androidx.activity:activity:1.2.0-beta01 ו-androidx.activity:activity-ktx:1.2.0-beta01 משוחררים. גרסה 1.2.0-beta01 כוללת את ההצהרות האלה.

תיקוני באגים

  • הפונקציה ActivityResultRegistry יוצרת עכשיו מספרים שלמים באופן אקראי עד שהיא מוצאת מספר שלם שלא הוקצה לשימוש כקוד בקשה register(), וכך מונעת את האפשרות של זליגת נתונים (overflow) במספרים שלמים שנגרמת על ידי הוספת קוד בקשה. (b/168779518)

  • משגיחי Lifecycle יוסרו כראוי כשקוראים ל-unregister() ב-ActivityResultLauncher. (b/165608393)

שינויים בהתנהגות

  • עכשיו, ה-ActivityResultRegistry יוצר אירוע IllegalStateException כשמנסים לקרוא ל-register() באמצעות LifecycleOwner ש-Lifecycle שלו כבר הגיע ל-STARTED. (b/165435866)

עדכון מסמכי התיעוד

  • במסמכי התיעוד של ContextAware יש קישורים אל LifecycleOwner כדי להדגיש שקודים להתקשרות חזרה של Lifecycle הם המקום המתאים לאירועי יצירה והרס. (aosp/1414152)

גרסה 1.2.0-alpha08

19 באוגוסט 2020

androidx.activity:activity:1.2.0-alpha08 ו-androidx.activity:activity-ktx:1.2.0-alpha08 משוחררים. גרסה 1.2.0-alpha08 מכילה את ההוספות האלה.

תכונות חדשות

  • ComponentActivity מיישם עכשיו את ContextAware, ומאפשר לכם להוסיף מופע OnContextAvailableListener אחד או יותר שיקבל קריאה חוזרת לפני Activity.onCreate() הבסיסי. (b/161390636)
    • תוסף Kotlin עם השהיה withContextAvailable() מאפשר להריץ בלוק ללא השהיה כשה-Context הופך לזמין ולהחזיר תוצאה. (I8290c)
    • ממשק ה-API הזה משמש את FragmentActivity ב-Fragment 1.3.0-alpha08 כדי לשחזר את המצב של ה-FragmentManager. כל המאזינים שיתווספו לתת-כיתות של FragmentActivity יפעלו אחרי המאזין הזה. (I513da)
    • AppCompatActivity משתמש ב-API הזה ב-AppCompat 1.3.0-alpha02. כל המאזינים שיתווספו לתת-כיתות של AppCompatActivity יפעלו אחרי המאזין הזה. (I513da)

תיקוני באגים

  • תוקנה בעיה בבדיקת Lint של ActivityResultFragmentVersionDetector שגרמה לקריסה שלה כשמשתמשים ב-Lint מגרסה 27.1.0 ואילך. (b/162155191)

גרסה 1.2.0-alpha07

22 ביולי 2020

androidx.activity:activity:1.2.0-alpha07 ו-androidx.activity:activity-ktx:1.2.0-alpha07 משוחררים. גרסה 1.2.0-alpha07 מכילה את ההצהרות האלה.

תכונות חדשות

  • הוספנו בדיקת איתור שגיאות בקוד (lint) חדשה של InvalidFragmentVersionForActivityResult, שמאשרת שאתם משתמשים ב-Fragment 1.3.0-alpha07 כשאתם משתמשים ב-Activity Result API. כך תוכלו למנוע קריסות בסביבת זמן הריצה בגלל בעיות מסוג 'קוד הבקשה לא חוקי' ובקשות הרשאה לא תקינות שנגרמות משימוש בגרסאות ישנות יותר של קטעי קוד. (b/152554847)

תרומה חיצונית

  • תוקנה שגיאת ArrayIndexOutOfBoundsException במהלך ניתוח התוצאות של חוזה Activity Result‏ RequestPermission. (I8f9e3, b/161057605)

גרסה 1.2.0-alpha06

10 ביוני 2020

androidx.activity:activity:1.2.0-alpha06 ו-androidx.activity:activity-ktx:1.2.0-alpha06 משוחררים. גרסה 1.2.0-alpha06 מכילה את ההצהרות האלה.

תכונות חדשות

  • עכשיו אפשר לבצע ניתוח מבנה של הכיתה ActivityResult ב-Kotlin כדי לגשת ישירות ל-requestCode ול-intent. (b/157212935)
  • עכשיו אפשר להשתמש ב-ActivityResultLauncher כדי לקבל את הערך של ActivityResultContract ששימש לרישום מרכז האפליקציות. (b/156875743)

שינויים ב-API

  • שינוי שגורם לשבירה: השם של השיטה invoke() ב-ActivityResultRegistry השתנה ל-onLaunch(). (b/157496491)
  • אם לא מוחזרת תוצאה, החוזה OpenMultipleDocuments מחזיר עכשיו רשימה ריקה במקום null ל-callback הרשום. (b/157348014)

גרסה 1.2.0-alpha05

20 במאי 2020

androidx.activity:activity:1.2.0-alpha05 ו-androidx.activity:activity-ktx:1.2.0-alpha05 משוחררים. גרסה 1.2.0-alpha05 מכילה את ההוספות האלה.

תכונות חדשות

שינויים ב-API

  • החוזה TakePicture מחזיר עכשיו את הערך boolean שמציין הצלחה, במקום תמונה ממוזערת Bitmap, כי אפליקציות המצלמה תומכות באפשרות הזו רק לעיתים רחוקות כשכותבים את התמונה ב-Uri שצוין. (b/154302879)
  • התוספים invoke() ב-ActivityResultLauncher הוסרו לטובת שימוש מפורש ב-launch() כדי לציין בצורה טובה יותר שמדובר בפעולות אסינכרניות. נוספו תוספים של Kotlin ל-launch לחבילה androidx.activity.result עבור ActivityResultLauncher<Void> ו-ActivityResultLauncher<Unit>, שמבטלים את הצורך להעביר את null או Unit, בהתאמה, ומשקפים את ההתנהגות הזו מהתוספים הקודמים של invoke(). (aosp/1304674, ‏ aosp/1304675)
  • השיטות IntentSenderRequest.Builder עבור setFlagsMask() ו-setFlagsValues() שולבו לשיטה אחת, setFlags(). (aosp/1302111)

תיקוני באגים

  • כשרושמים ActivityResultCallback עם LifecycleOwner, תוקנה בעיה שבה קריאת החזרה (callback) מופעלת לפני שהמצב מגיע ל-STARTED. (aosp/1309744)

שינויים בהתנהגות

  • עכשיו ActivityResultRegistry יוצר קודי בקשה שמתחילים ב-0xFFFF ולא ב-0, כדי למנוע חפיפה כשמשתמשים ב-startActivityForResult() או ב-requestPermissions() בפעילות. (aosp/1302324)

גרסה 1.2.0-alpha04

29 באפריל 2020

androidx.activity:activity:1.2.0-alpha04 ו-androidx.activity:activity-ktx:1.2.0-alpha04 משוחררים. גרסה 1.2.0-alpha04 מכילה את ההוספות האלה.

תכונות חדשות

  • נוספה חוזה שיכול לקרוא ל-startIntentSenderForResult לממשקי ה-API של ActivityResult. (b/153007517)

שינויים ב-API

  • השם של method‏ prepareCall() השתנה ל-registerForActivityResult(), גם ב-ComponentActivity כאן וגם ב-Fragment 1.3.0-alpha04. (aosp/1278717)
  • השמות של החוזים GetContents,‏ OpenDocuments ו-RequestPermissions שונו ל-GetMultipleContents,‏ OpenMultipleDocuments ו-RequestMultiplePermissions, בהתאמה. (aosp/1280161)
  • ComponentActivity מטמיע עכשיו את הממשק ActivityResultRegisteryOwner. (aosp/1290888)
  • - ממשקי ה-API startActivityForResult()/onActivityResult() ו-onRequestPermissionsResult() ב-ComponentActivity הוצאו משימוש. צריך להשתמש ב-Activity Result APIs. (b/154751887)

תיקוני באגים

  • כשמשתמשים בחוזים GetMultipleContents ו-OpenMultipleDocuments ובוחרים פריט יחיד, הוא מוחזר כעת בצורה נכונה לשיחה החוזרת. (b/152941153)

גרסה 1.2.0-alpha03

1 באפריל 2020

androidx.activity:activity:1.2.0-alpha03 ו-androidx.activity:activity-ktx:1.2.0-alpha03 משוחררים. גרסה 1.2.0-alpha03 כוללת את ההוספות האלה.

תכונות חדשות

  • הוספת החוזים TakeVideo,‏ PickContact,‏ GetContent,‏ GetContents,‏ OpenDocument,‏ OpenDocuments,‏ OpenDocumentTree ו-CreateDocument לקבוצת החוזים שנוצרו מראש על ידי ActivityResultContracts. (aosp/1262482, ‏ aosp/1266916, ‏ aosp/1268960)
  • ממשקי ה-API של תוצאות הפעילות תומכים עכשיו בהפעלת פעילות עם תוצאה באמצעות ActivityOptionsCompat אופציונלי. (b/151860054)

שינויים ב-API

  • חוזה TakePicture מקבל עכשיו קלט Uri לגבי המיקום שבו התמונה צריכה להישמר. השם של החוזה הקודם שלא מקבל קלט השתנה ל-TakePicturePreview. (aosp/1262482)
  • השם של method‏ registerActivityResultCallback() ב-ActivityResultRegistry השתנה ל-register(). (aosp/1267621)
  • השם של השיטה dispose() ב-ActivityResultLauncher השתנה ל-unregister(), וה-unregisterResultCallback() ב-ActivityResultRegistry הוסר. (aosp/1267621)
  • השיטה createIntent() של ActivityResultContact מקבלת עכשיו Context בנוסף לקלט, כדי לאפשר ליצור כוונות מפורשות. (aosp/1238800)
  • עכשיו אפשר להשתמש ב-ActivityResultContract כדי לשנות את getSynchronousResult() ולספק תוצאה בלי להפעיל את startActivityForResult. החוזים RequestPermission ו-RequestPermissions משתמשים בזה כדי לספק סטטוס 'granted' (הוקצה) בצורה נכונה אם ההרשאות המבוקשות כבר הוקצו. (b/151110799)
  • החוזה של Dial שהיה זמין בעבר הוסר כי Intent הזה לא מיועד לשימוש עם startActivityForResult(). (aosp/1266916)
  • הרבה ממשקי API של תוצאות פעילות שלא נועדו להרחבה הם עכשיו final. הרשימה הזו כוללת את getActivityResultRegistry(), את השיטות prepareCall(), את כל השיטות של ActivityResultRegistry מלבד invoke() ואת מספר חוזי ברירת המחדל שלא תומכים בתוספים אופציונליים. (b/152439361)

תיקוני באגים

  • תוקנה בעיה ב-NullPointerException ב-ActivityResultRegistry כשמנסים להעביר תוצאות לשיחה חוזרת שעדיין לא נרשמה מחדש אחרי שינוי בהגדרות. עכשיו ActivityResultRegistry שומר את התוצאות האלה בהמתנה ומעביר אותן כשהשיחה החוזרת נרשמת מחדש. (b/152137004)

גרסה 1.2.0-alpha02

18 במרץ 2020

androidx.activity:activity:1.2.0-alpha02 ו-androidx.activity:activity-ktx:1.2.0-alpha02 משוחררים. גרסה 1.2.0-alpha02 מכילה את ההוספות האלה.

תכונות חדשות

  • ActivityResultRegistry: ‏ComponentActivity מספק עכשיו ActivityResultRegistry שמאפשר לטפל בתהליכים startActivityForResult()+onActivityResult() וגם requestPermissions()+onRequestPermissionsResult() בלי לשנות את שיטות ה-Activity או ה-Fragment, מספק בטיחות סוגים משופרת באמצעות ActivityResultContract ומספק ווקים לבדיקה של התהליכים האלה. כדאי לעיין במאמר המעודכן בנושא קבלת תוצאה מפעילות. (b/125158199)

גרסה 1.2.0-alpha01

4 במרץ 2020

androidx.activity:activity:1.2.0-alpha01 ו-androidx.activity:activity-ktx:1.2.0-alpha01 משוחררים. גרסה 1.2.0-alpha01 כוללת את ההוספות האלה.

תכונות חדשות

  • הוספנו תמיכה ב-API של ViewTreeLifecycleOwner.get(View) שנוסף ב-Lifecycle 2.3.0-alpha01, כך שהוא יחזיר את הפעילות כ-LifecycleOwner לכל תצוגות שנוספו ישירות לפעילות. (aosp/1182955)

תיקוני באגים

  • תוקנה נסיגה (regression) שהופיעה בפעילות 1.1.0 כשהיא פועלת בגרסאות ישנות יותר של הפלטפורמה, שבהן onBackPressed() גורם ל-IllegalStateException בגלל באג ב-android.app.FragmentManager. (b/146290338)

גרסה 1.1.0

גרסה 1.1.0

22 בינואר 2020

androidx.activity:activity:1.1.0 משוחרר. גרסה 1.1.0 כוללת את ההצהרות האלה.

שינויים חשובים מאז גרסה 1.0.0

  • שילוב של SavedState ב-Lifecycle ViewModel: SavedStateViewModelFactory הוא עכשיו המפעל שמוגדר כברירת מחדל כשמשתמשים ב-by viewModels(), ב-constructor‏ ViewModelProvider או ב-ViewModelProviders.of() עם ComponentActivity או עם תת-הסוגים שלו.

גרסה 1.1.0-rc03

4 בדצמבר 2019

androidx.activity:activity:1.1.0-rc03 ו-androidx.activity:activity-ktx:1.1.0-rc03 משוחררים. גרסה 1.1.0-rc03 כוללת את השמירות האלה.

שינויים ביחסי התלות

  • הפעילות תלויה עכשיו ב-Lifecycle 2.2.0-rc03 וב-Lifecycle ViewModel SavedState 1.0.0-rc03.

גרסה 1.1.0-rc02

7 בנובמבר 2019

androidx.activity:activity:1.1.0-rc02 ו-androidx.activity:activity-ktx:1.1.0-rc02 משוחררים. גרסה 1.1.0-rc02 כוללת את ההצהרות האלה.

שינויים ביחסי התלות

  • הפעילות תלויה עכשיו במחזור החיים 2.2.0-rc02.

גרסה 1.1.0-rc01

23 באוקטובר 2019

הגרסאות androidx.activity:activity:1.1.0-rc01 ו-androidx.activity:activity-ktx:1.1.0-rc01 פורסמו ללא שינויים מ-1.1.0-beta01. גרסה 1.1.0-rc01 כוללת את ההוספות האלה.

גרסה 1.1.0-beta01

9 באוקטובר 2019

androidx.activity:activity:1.1.0-beta01 ו-androidx.activity:activity-ktx:1.1.0-beta01 משוחררים. גרסה 1.1.0-beta01 כוללת את ההצהרות האלה.

שינויים ביחסי התלות

  • הפעילות תלויה עכשיו ב-SavedState 1.0.0 יציב.

גרסה 1.1.0-alpha03

5 בספטמבר 2019

androidx.activity:activity:1.1.0-alpha03 ו-androidx.activity:activity-ktx:1.1.0-alpha03 משוחררים. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

תכונות חדשות

  • הפעילות תלויה עכשיו ב-Core 1.1.0 יציב.

תיקוני באגים

גרסה 1.1.0-alpha02

7 באוגוסט 2019

androidx.activity:activity:1.1.0-alpha02 ו-androidx.activity:activity-ktx:1.1.0-alpha02 משוחררים. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

תכונות חדשות

  • SavedStateViewModelFactory הוא עכשיו המפעל שמוגדר כברירת מחדל כשמשתמשים ב-by viewModels(), ב-constructor של ViewModelProvider או ב-ViewModelProviders.of() עם ComponentActivity (b/135716331)

גרסה 1.1.0-alpha01

2 ביולי 2019

androidx.activity:activity:1.1.0-alpha01 ו-androidx.activity:activity-ktx:1.1.0-alpha01 משוחררים. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

תכונות חדשות

  • עכשיו activity תלוי ב-Lifecycle 2.2.0-alpha02. (aosp/1007817)
  • נוספה תלות של activity-ktx ב-lifecycle-runtime-ktx. כבר לא צריך להוסיף אותה באופן מפורש ליחסי התלות כשמשתמשים ב-activity-ktx או בספריות שתלות ב-activity-ktx (כמו fragment-ktx). (aosp/987162)

גרסה 1.0.0

גרסה 1.0.0

5 בספטמבר 2019

androidx.activity:activity:1.0.0 ו-androidx.activity:activity-ktx:1.0.0 משוחררים. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

תכונות עיקריות בגרסה 1.0.0

  • ComponentActivity: ComponentActivity משמשת כמחלקת הבסיס החדשה של FragmentActivity ב-Fragment 1.1.0, וכתוצאה מכך, גם של AppCompatActivity ב-AppCompat 1.1.0.
  • activity-ktx: המודול activity-ktx כולל תוסף למאפיין by viewModels ב-Kotlin לגישה ל-ViewModels. המודול הזה נכלל באופן אוטומטי כשאתם כוללים את fragment-ktx מקטע 1.1.0.
  • OnBackPressedDispatcher: כחלופה שניתנת ליצירה כדי לשנות את onBackPressed(), מעכשיו אפשר לרשום OnBackPressedCallback מכל LifecycleOwner (כמו קטע) כדי ליירט אירועים של לחצן החזרה לאחור במערכת. נוספה ל-activity-ktx פונקציית lambda עם גרסת נמען addCallback. פרטים נוספים זמינים במאמר הוספת תיעוד של ניווט מותאם אישית אחורה.
  • הוצאה משימוש של onRetainCustomNonConfigurationInstance: ממשקי ה-API onRetainCustomNonConfigurationInstance() ו-getLastCustomNonConfigurationInstance() הקשורים הוצאו משימוש. מומלץ מאוד להשתמש ב-ViewModels כדי לאחסן מצב שאינו תצורה, כי הם מציעים פתרון שאפשר לשלב בכל ViewModelStoreOwner, שמבהיר את הבעלות על האובייקטים שנשמרים ומספק קריאה חוזרת (callback) מסוג onCleared() לניקוי המשאבים כשהפעילות נהרסת סופית.

גרסה 1.0.0-rc01

2 ביולי 2019

הגרסאות androidx.activity:activity:1.0.0-rc01 ו-androidx.activity:activity-ktx:1.0.0-rc01 פורסמו ללא שינויים מ-1.0.0-beta01. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

גרסה 1.0.0-beta01

5 ביוני 2019

הגרסאות androidx.activity::activity:1.0.0-beta01 ו-androidx.activity:activity-ktx:1.0.0-beta01 פורסמו ללא שינויים מ-1.0.0-alpha08. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

גרסה 1.0.0-alpha08

7 במאי 2019

androidx.activity:activity:1.0.0-alpha08 ו-androidx.activity:activity-ktx:1.0.0-alpha08 משוחררים. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

שינויים ב-API

  • שינוי שפוגע בתאימות לאחור: השיטות addOnBackPressedCallback ו-removeOnBackPressedCallback ב-ComponentActivity, שהוצאו משימוש בעבר, הוסרו. aosp/953857
  • השיטות setEnabled() ו-isEnabled() של OnBackPressedCallback הן סופיות עכשיו. b/131416833
  • השיטה remove() של OnBackPressedCallback היא עכשיו סופית. aosp/952720
  • ל-OnBackPressedDispatcher יש עכשיו קונסטרוקטורים ציבוריים, שמאפשרים ליצור מופעים משלכם לבדיקה וכו'. aosp/953431
  • onBackPressed() עבור ComponentActivity מסומן עכשיו באופן מפורש כ-@MainThread aosp/952721

תיקוני באגים

  • תוקנה בעיה ב-ConcurrentModificationException כשקוראים ל-remove() מתוך השיטה handleOnBackPressed() של OnBackPressedCalback שנוסף באמצעות LifecycleOwner. b/131765095

גרסה 1.0.0-alpha07

25 באפריל 2019

androidx.activity:activity:1.0.0-alpha07 ו-androidx.activity:activity-ktx:1.0.0-alpha07 משוחררים. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

שינויים ב-API

בגרסה הזו יש שינויים משמעותיים בטיפול ב-onBackPressed(). פרטים נוספים זמינים במסמכי התיעוד המעודכנים בנושא גיבוי בהתאמה אישית.

  • השיטות של OnBackPressedCallback ושל OnBackPressedDispatcher סומנו כ-@MainThread. (aosp/943813)
  • השיטה handleOnBackPressed() לא מחזירה יותר boolean. במקום זאת, OnBackPressedCallback היא עכשיו כיתה מופשטת שאפשר להפעיל או להשבית אותה – רק כשהשיטה החדשה isEnabled() מחזירה את הערך true, תתבצע קריאה ל-handleOnBackPressed(), שבה חובה לטפל בלחצן 'הקודם'. (aosp/944518)
  • השיטות addCallback של OnBackPressedDispatcher כבר לא מחזירות מופע של Cancellable. OnBackPressedCallback מכיל עכשיו את השיטה remove() שמספקת את הפונקציונליות הזו, ומאפשרת לכם לקרוא ל-remove() במהלך handleOnBackPressed(). (aosp/944519) (aosp/946316)
  • activity-ktx מכיל עכשיו קריאה חוזרת ברמת הנמען עבור addCallback שמקבלת פונקציית lambda שמטמיעה את handleOnBackPressed() ויש לה גישה ל-isEnabled ול-remove() (aosp/944520)

גרסה 1.0.0-alpha06

3 באפריל 2019

androidx.activity:activity:1.0.0-alpha06 ו-androidx.activity:activity-ktx:1.0.0-alpha06 משוחררים. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

שינויים ב-API

  • ה-ComponentActivity מכיל עכשיו קונסטרוקטור שני שמקבל @LayoutRes int, שמחליף את ההתנהגות הקודמת של הוספת הערה לכיתה AppCompatActivity באמצעות @ContentView. הגישה הזו פועלת גם במודולים של אפליקציות וגם במודולים של ספריות. (b/128352521)
  • ממשקי ה-API הקשורים ל-OnBackPressedCallback ב-ComponentActivity הוצאו משימוש לטובת OnBackPressedDispatcher החדש, שאפשר לאחזר דרך getOnBackPressedDispatcher(). (aosp/922523)
  • שיטות להוספת OnBackPressedCallback חדש ל-OnBackPressedDispatcher מחזירות עכשיו אובייקט Cancellable, שמאפשר להסיר את פונקציית ה-callback בלי צורך בהפניה מפורשת ל-OnBackPressedDispatcher. (aosp/922523)
  • הוספת OnBackPressedCallback עם LifecycleOwner משויך מובילה עכשיו להוספה ולהסרה של ה-OnBackPressedCallback כאשר מחזור החיים מתחיל ומפסיק, בהתאמה. (aosp/922523)

גרסה 1.0.0-alpha05

13 במרץ 2019

androidx.activity:activity:1.0.0-alpha05 ו-androidx.activity:activity-ktx:1.0.0-alpha05 משוחררים. הרשימה המלאה של השינויים שכלולים במהדורה הזו מופיעה כאן.

תכונות חדשות

  • חיפושים של הערות @ContentView שמורים עכשיו במטמון (b/123709449)

גרסה 1.0.0-alpha04

30 בינואר 2019

androidx.activity:activity 1.0.0-alpha04 ו-androidx.activity:activity-ktx 1.0.0-alpha04 משוחררים.

תכונות חדשות

  • נוספה תמיכה בהערה של המחלקה @ContentView שמאפשרת לציין איזה קובץ XML של פריסה צריך להתנפח, כחלופה לשימוש ב-setContentView(). (aosp/837619)

שינויים ב-API

תיקוני באגים

  • המודול activity תלוי עכשיו בגרסה 2.1.0-alpha02 של ViewModel כדי להתאים לתלות של המודול activity-ktx.

גרסה 1.0.0-alpha03

17 בדצמבר 2018

androidx.activity 1.0.0-alpha03 משוחרר.

תכונות חדשות

  • ComponentActivity מיישמת עכשיו את BundleSavedStateRegistryOwner ותלויה בספרייה SavedState שפורסמה לאחרונה [aosp/815133]
  • עכשיו ComponentActivity פועלת סביב באג במסגרת Android שגורם ל-InputMethodManager לדלוף את התצוגה האחרונה שהתמקדו בה [b/37122102]

גרסה 1.0.0-alpha02

3 בדצמבר 2018

שינויים ב-API

גרסה 1.0.0-alpha01

5 בנובמבר 2018

ב-androidx.activity 1.0.0-alpha01 מופיעה ComponentActivity, כיתת בסיס חדשה של FragmentActivity ו-AppCompatActivity הקיימים.

תכונות חדשות

  • עכשיו אפשר לרשום OnBackPressedCallback דרך addOnBackPressedCallback כדי לקבל קריאות חזרה מסוג onBackPressed() בלי לשנות את השיטה בפעילות.
  • נוספה by viewModels() חדשה של Kotlin לניהול נכסים, שמאפשרת לאחזר ViewModel מ-ComponentActivity.
  • אירועי קלט בהמתנה (כמו קליקים) מבוטלים עכשיו ב-onStop().

שינויים ב-API

  • ההטמעה של LifecycleOwner ו-ViewModelStoreOwner הועברה מ-FragmentActivity אל ComponentActivity.
  • האפשרות onRetainCustomNonConfigurationInstance הוצאה משימוש. משתמשים ב-ViewModel כדי לאחסן אובייקטים שצריכים לשרוד שינויים בתצורה.