פעילות

גישה לממשקי API שאפשר להרכיב, שמבוססים על Activity.
העדכון האחרון גרסה יציבה גרסה מועמדת להפצה גרסת בטא גרסת אלפא
‫2 ביולי 2025 1.10.1 1.11.0-rc01 - 1.12.0-alpha04

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

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

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

מגניב

dependencies {
    def activity_version = "1.10.1"

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

Kotlin

dependencies {
    val activity_version = "1.10.1"

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

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

משוב

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

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

מידע נוסף זמין במאמרי העזרה בנושא כלי המעקב אחר בעיות.

גרסה 1.12

גרסה 1.12.0-alpha04

‫2 ביולי 2025

הגרסאות androidx.activity:activity:1.12.0-alpha04, androidx.activity:activity-compose:1.12.0-alpha04 ו-androidx.activity:activity-ktx:1.12.0-alpha04 יוצאות. גרסה 1.12.0-alpha04 מכילה את הקומטים האלה.

שינויים בתלות

גרסה 1.12.0-alpha03

‫18 ביוני 2025

הגרסאות androidx.activity:activity:1.12.0-alpha03, androidx.activity:activity-compose:1.12.0-alpha03 ו-androidx.activity:activity-ktx:1.12.0-alpha03 יוצאות. גרסה 1.12.0-alpha03 מכילה את הקומטים האלה.

תיקוני באגים

  • עכשיו גם OnBackPressedDispatcher וגם NavigationEventDispatcher מאותחלים בצורה עצלה ב-ComponentActivity. (I710e6)

  • תוקנו בעיות ב-OnBackPressedDistpatcher שגרמו לבעיות הבאות:

    • רק המשגר האחרון שאליו נוסף OnBackPressedCallback מקבל התראה על הסטטוס המופעל שלו (b/418715930)
    • OnBackPressedDispatcher מסירה את הקריאה החוזרת הלא נכונה כשמשתמשים בפונקציה addCallback שמקבלת מחזור חיים. (b/422714753)
    • OnBackPressedDispatcher.remove() לא מסיר את כל המופעים של OnBackPressedCallback רשום. (b/423024414)

גרסה 1.12.0-alpha02

‫4 ביוני 2025

הגרסאות androidx.activity:activity:1.12.0-alpha02, androidx.activity:activity-compose:1.12.0-alpha02 ו-androidx.activity:activity-ktx:1.12.0-alpha02 יוצאות. גרסה 1.12.0-alpha02 מכילה את הקומטים האלה.

תיקוני באגים

  • מ-NavigationEvent 1.0.0-alpha02: תוקנה ConcurrentModificationException שיכולה להתרחש כשקוראים ל-NavigationEventCallback.remove() בגלל שינוי בו-זמני של הרשימה הפנימית של רכיבים שניתן לסגור. (I63066)

גרסה 1.12.0-alpha01

‫20 במאי 2025

הגרסאות androidx.activity:activity:1.12.0-alpha01, androidx.activity:activity-compose:1.12.0-alpha01 ו-androidx.activity:activity-ktx:1.12.0-alpha01 יוצאות. גרסה 1.12.0-alpha01 מכילה את הקומטים האלה.

תכונות חדשות

  • ComponentActivity ו-ComponentDialog שולבו עם NavigationEvent 1.0.0-alpha01 באמצעות NavigationEventDispatcherOwner API. עכשיו אפשר לאחזר NavigationEventDispatcher מ-ComponentActivity באמצעות השדה navigationEventDispatcher. מאחר ש-OnBackPressedDispatcher נכתב מחדש על בסיס הספרייה החדשה, כל השימושים הקודמים אמורים להמשיך לפעול בצורה תקינה. מעכשיו צריך להשתמש ב-NavigationEventDispatcher וב-NavigationEventCallback. (‫Ib8eed, I6cc44, Ib7724, I9a0f7,b/412597031, b/415028038, b/412596729, b/412597140, b/412596012)

גרסה 1.11

גרסה 1.11.0-rc01

‫23 באפריל 2025

הגרסאות androidx.activity:activity:1.11.0-rc01, androidx.activity:activity-compose:1.11.0-rc01 ו-androidx.activity:activity-ktx:1.11.0-rc01 יוצאות. גרסה 1.11.0-rc01 מכילה את הקומטים האלה.

גרסה 1.11.0-beta01

‫9 באפריל 2025

הגרסאות androidx.activity:activity:1.11.0-beta01, androidx.activity:activity-compose:1.11.0-beta01 ו-androidx.activity:activity-ktx:1.11.0-beta01 יוצאות. גרסה 1.11.0-beta01 מכילה את הקומטים האלה.

גרסה 1.11.0-alpha02

‫26 במרץ 2025

הגרסאות androidx.activity:activity:1.11.0-alpha02, androidx.activity:activity-compose:1.11.0-alpha02 ו-androidx.activity:activity-ktx:1.11.0-alpha02 יוצאות. גרסה ‎1.11.0-alpha02 מכילה את הקומטים האלה.

שינויים ב-API

  • שילבנו את EDGE_NONE וframeTimeMillis החדשים מ-Android 16 Beta03 ב-BackEventCompat שסופק על ידי הפונקציות handleOnBackStarted ו-handleOnBackProgressed של OnBackPressedCallback.

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

  • הפעילות נאספת עכשיו באמצעות API 36. ‫(I510e8, ‏ b/301910674)

גרסה 1.11.0-alpha01

‫12 במרץ 2025

הגרסאות androidx.activity:activity:1.11.0-alpha01, androidx.activity:activity-compose:1.11.0-alpha01 ו-androidx.activity:activity-ktx:1.11.0-alpha01 יוצאות. גרסה 1.11.0-alpha01 מכילה את הקומטים האלה.

תכונות חדשות

  • נוסף MediaCapabilities API ל-PickVisualMediaRequest כדי לאפשר לאפליקציות לציין את יכולות המדיה שלהן, כמו סוגי HDR נתמכים. (Ic3ee7)

גרסה 1.10

גרסה 1.10.1

‫26 בפברואר 2025

הגרסאות androidx.activity:activity:1.10.1, androidx.activity:activity-compose:1.10.1 ו-androidx.activity:activity-ktx:1.10.1 יוצאות. גרסה 1.10.1 מכילה את ההעברות האלה.

תיקוני באגים

  • אפשר עכשיו לפתור את הבעיות ViewTree OnBackPressedDispatcherOwners ו-FullyDrawnReporterOwners באמצעות הורים לא רציפים של תצוגה, כמו ViewOverlay. מידע נוסף על הורים של תצוגות לא רציפות זמין בהערות הגרסה של core או במסמכי התיעוד בכתובת ViewTree.setViewTreeDisjointParent. (Ie7750)

גרסה 1.10.0

‫15 בינואר 2025

הגרסאות androidx.activity:activity:1.10.0, androidx.activity:activity-compose:1.10.0 ו-androidx.activity:activity-ktx:1.10.0 יוצאות. גרסה 1.10.0 מכילה את הקומטים האלה.

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

  • PhotoPicker מאפשר עכשיו לבחור תמונות לפי הסדר ולבחור איזה כרטיסייה (אלבומים או תמונות) תוצג בהתחלה.
  • החוזים של תוצאות הפעילות PickVisualMedia ו-PickMultipleVisualMedia שמפעילים את הכלי לבחירת תמונות לא מעבירים יותר את ההרשאה ישירות ל-Google Play Services אם הכלי לבחירת תמונות של המערכת לא זמין, אלא משתמשים בפעולה הציבורית ACTION_SYSTEM_FALLBACK_PICK_IMAGES ובתוספים קשורים כדי לספק ליצרני ציוד מקורי ולאפליקציות מערכת חוויה עקבית של הכלי לבחירת תמונות כפתרון חלופי.
  • נוסף LocalActivity composition local חדש שמספק את Activity להיקף הנוכחי, כך שמפתחים לא צריכים יותר לקבל Activity מ-LocalContext.

גרסה 1.10.0-rc01

‫11 בדצמבר 2024

הגרסאות androidx.activity:activity:1.10.0-rc01, androidx.activity:activity-compose:1.10.0-rc01 ו-androidx.activity:activity-ktx:1.10.0-rc01 יוצאות. גרסה 1.10.0-rc01 מכילה את הקומטים האלה.

תיקוני באגים

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

גרסה 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)

תיקוני באגים

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

עדכון תלות

  • הפעילות 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) ובכל הגרסאות כשמשתמשים ב-AGP 8.1 ואילך (למשל D8 גרסה 8.1). לקוחות שלא משתמשים ב-AGP מומלץ לעדכן לגרסה D8 8.1 ואילך. למידע נוסף, מומלץ לעיין במאמר הזה. (I9496c, ‏ b/345472586)
  • מתוך Activity 1.9.2: תוקנה בעיה שבה ה-API של Activity Compose‏ PredictiveBackHandler המשיך לטפל בתנועת החלקה אחורה של המערכת במסגרת שבה הוא הושבת, מה שיכול היה לגרום לספריות כמו Navigation Compose לטפל בהחלקה אחורה גם עם מחסנית ריקה של החלקה אחורה, וכתוצאה מכך להפעיל את IndexOutOfBoundsException. (Ie3301, b/340202286)
  • מתוך Activity 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 מכילה את הקומטים האלה.

תיקוני באגים

  • אחרי שה-handler מושבת, הפונקציה 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 מכילה את השינויים האלה ב-lthcocommits.

תיקוני באגים

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

תיקוני באגים

  • תוקנה רגרסיה בביצועים של הפעלת פעילות שהוצגה בפעילות 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 מכילה את הקומיטים האלה.

אזהרת Lint

תיקוני באגים

  • אם אירוע חזרה נשלח מהמערכת שהופעלה במהלך תנועת חזרה עם חיזוי שכבר פועלת, תנועת החזרה עם חיזוי שפועלת כרגע מבוטלת ואירוע החזרה החדש מתחיל תנועת חזרה חדשה עם חיזוי. (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. כך אפשר לוודא שערכי ה-nullability של הגנריים בחוזה שמועבר אל 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)
  • מתוך Activity 1.8.2: תוקן האקסטרה שהועבר אל ACTION_SYSTEM_FALLBACK_PICK_IMAGES של Photo Picker Activity Contract כדי להעביר אותו בצורה נכונה אל המפתח EXTRA_SYSTEM_FALLBACK_PICK_IMAGES_MAX, במקום להשתמש באקסטרה עם המפתח "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 כדי לאפשר לרכיבים להשתמש בקריאות חוזרות (callbacks) לאירועי onUserLeaveHint. (I54892)

שינויים ב-API

  • הקוד של ComponentActivity שוכתב ב-Kotlin. (I14f31)
  • הקוד של ActivityResultCaller שוכתב ב-Kotlin. (Ib02e4)
  • הקוד של ActivityResultLauncher שוכתב ב-Kotlin. כחלק מההמרה הזו, השיטה getContract היא עכשיו מאפיין מופשט של Kotlin. זהו שינוי שמתאים לבינארי, אבל הוא עלול לשבור את הקוד אם ההטמעה של ActivityResultLauncher נכתבה ב-Kotlin. (Id4615)
  • PickVisualMediaRequest כולל עכשיו את אותה רמת API מינימלית של 19 כמו חוזה התוצאה של הפעילות PickVisualMedia. (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. היא מספקת 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
    }
  }

הוצאנו משימוש את 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 נוסף PredictiveBackHandler Composable חדש לטיפול באירועים של תנועת חזרה עם חיזוי. היא מספקת 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 כשהיא מקבלת קריאה חוזרת (callback) של 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 מבטל עכשיו בצורה נכונה את כל הקריאות החוזרות (callbacks) שמוסרות במהלך תנועת חזרה חזויה. (I3f90f)

שינויים ב-API

  • כשמעבירים את SystemBarStyle.auto אל enableEdgeToEdge API, אפשר עכשיו לבטל את הפרמטר detectDarkMode lambda כדי לספק לוגיקה מותאמת אישית לזיהוי מצב לילה. (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

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

תיקוני באגים

  • מתוך Activity 1.7.2: תוקנה קריסת ReportDrawn כשיוצאים ממסך לפני שמתבצעת קריאה ל-report. (Ic46f1, ‏ b/260506820)

גרסה 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 יוצאות. הגרסה הזו פורסמה מענף פנימי.

תיקוני באגים

גרסה 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)

תיקוני באגים

  • תוקנה בעיה שבה מקטעים (Fragments) ביטלו באופן שגוי את התוקף של MenuHosts וגרמו לתפריטים אחרים בפעילות להתנהג בצורה לא צפויה. (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 יוצאות. הגרסה הזו נוצרה מענף פנימי.

תכונות חדשות

  • הכיתה OnBackPressedCallback כוללת עכשיו קריאות חוזרות חדשות לחיזוי התקדמות החזרה, לטיפול בתנועת החזרה, להתקדמות במהלך התנועה ולביטול תנועת החזרה, בנוסף לקריאה החוזרת הקודמת 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

מספר מחלקות של פעילויות הומרו ל-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

FullyDrawnReporter APIs

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

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

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

הוספנו שלושה ממשקי API של Activity Compose כדי להקל על השימוש ב-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 ליצרני ציוד מקורי ולאפליקציות מערכת שרוצים לספק חוויה עקבית של הכלי לבחירת תמונות. ההטמעה של הגיבוי הזה עדיין מוגבלת לאפליקציות מערכת בלבד. (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 למקרים שבהם הכלי לבחירת תמונות לא זמין, מגביל עכשיו בצורה נכונה את הטיפול באפליקציות שמותקנות בתמונת המערכת של המכשיר. (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 שמצורפות לחלון באמצעות דרישות ViewTree APIs. (‫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 מכילה את הקומיטים האלה.

תיקוני באגים

  • מתוך Activity 1.6.1: תוקנה בעיה שבה החוזה PickMultipleVisualMedia Activity Result לא הופעל במכשירי 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 מכילה את הקומיטים האלה.

FullyDrawnReporter APIs

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

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

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

הוספנו שני ממשקי API של Activity Compose כדי להקל על השימוש ב-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 מכילה את הקומיטים האלה.

תיקוני באגים

  • תוקנה בעיה בחוזה PickMultipleVisualMedia Activity Result שלא הופעל במכשירי 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)
  • בכיתות שמרחיבות את ComponentActivity, תמיד יישלחו שני הקריאות החוזרות (callback) של onMultiWindowModeChanged(). (Ic4d85)
  • הפונקציה ActivityResultRegistry לא תחזיר יותר תוצאה ל-ActivityResultCallback אם השיחה launch תזרוק Exception והקריאה החוזרת נרשמה ללא 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 כוללת את הקומיטים האלה.

תיקוני באגים

  • כשמשתמשים בגרסאות SDK שקודמות לגרסה 33, הפעלה של OnBackPressedDispatcher לא תגרום יותר לClassVerificationError. (Ic32e1)
  • בכיתות שבהן מוגדרת החזרה (callback) של ComponentActivity onPictureInPictureModeChanged(), ההחזרות האלה תמיד יישלחו. (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 מכילה את הקומיטים האלה.

שינויים ב-API

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

תיקוני באגים

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

עדכון תלות

  • מתוך Activity 1.5.1: הספרייה Activity תלויה עכשיו בגרסה Lifecycle2.5.1. (If6697)

גרסה 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 שבה ניסיון ליצור בקשה, באמצעות הכלי ליצירת בקשות או הפונקציה ברמה העליונה של Kotlin, היה גורם לגלישת מחסנית.
  • שילבנו את OnBackInvokedCallback בגרסת הבטא השנייה למפתחים של Android 13 בתוך 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.

תכונות חדשות

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

גירסה 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 מכילה את הקומיטים האלה.

תיקוני באגים

  • הפונקציה ActivityResultRegistry לא תחזיר יותר תוצאה ל-ActivityResultCallback אם הקריאה launch() תזרוק את Exception והקריאה החוזרת נרשמה ללא 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, וכך מאפשרת לתצוגות לאחזר את ה-dispatcher הנכון באופן כללי, בין אם הוא קיים ב-ComponentActivity או ב-ComponentDialog.
  • ממשקי קריאה חוזרת – עכשיו ComponentActivity מטמיע קבוצה של ממשקי קריאה חוזרת מודולריים שאפשר להשתמש בהם במקום בקריאות החוזרות Activity. הממשקים האלה כוללים את: OnNewIntentProvider, ‏ OnConfigurationChangedProvider, ‏ OnTrimMemoryProvider, ‏ OnPictureInPictureModeChangedProvider, ‏ OnMultiWindowModeChangedProvider
  • שילוב CreationExtras – ל-ComponentActivity יש עכשיו אפשרות לספק ViewModelProvider.Factory ללא מצב דרך CreationExtras של Lifecycle 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 מכילה את הקומיטים האלה.

תיקוני באגים

  • הפונקציה ComponentActivity של onPanelClosed() קוראת עכשיו גם לפונקציה העליונה 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. אם מספקים תוספים, המערכת מתעלמת מהארגומנטים שמוגדרים בהפעלה. ‫(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, במקום להסתמך על העברה של Context. (I74685)

תיקוני באגים

  • תוקנה קריסה שהתרחשה כשניסו לגשת ל-ViewModel בפעם הראשונה מתוך קריאה חוזרת (callback) של registerForActivityResult() או מתוך קריאות חוזרות (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 שמונעת את הקריאה למתודה launch של ActivityResultLauncher כחלק מהקומפוזיציה, כי הקומפוזיציה צריכה להיות ללא תופעות לוואי. משתמשים ב-APIs לטיפול בתופעות לוואי. (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 מכילה את הקומיטים האלה.

תכונות חדשות

  • ‫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)

External Contribution

  • תודה ל-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.
  • התכונה 'יצירת פעילות' תלויה עכשיו בתכונה 'יצירה' 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

  • ארטיפקט Activity 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 נשמרים ומשוחזרים עכשיו כמו שצריך, כך שהם לא משוכפלים ב-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 שהוצא משימוש, כי אפליקציות מצלמה תמכו לעיתים רחוקות בהחזרת מפת סיביות של תמונה ממוזערת, ולכן התוצאה לא הייתה שימושית. ‫(Ie21f2, ‏ b/185938070)
  • נוסף API חדש Activity#setPipAnimationHintView לעדכון רמז המקור של PipParams' בכל פעם שהתצוגה זזה. ‫(I9063d)

שינויים ב-API

  • הפונקציה rememberLauncherForActivityResult מחזירה עכשיו launcher שמבטל את הפונקציה unregister() – הרישום והביטול של הרישום של ה-launcher מטופלים אוטומטית על ידי 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)
  • מגרסה 1.2.2 של Activity: 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)
  • מתוך Activity 1.2.1: ActivityResultRegistry עכשיו אפשר לוודא שבקשות launch() שנמצאות בתהליך יחזירו את התוצאות שלהן גם אם unregister(), ואז register() שוב עם אותו מקש. (I9ef34, b/181267562)
  • הכלי Activity Compose כבר לא מוסיף יחסי תלות של בדיקות לנתיב המחלקה של זמן הריצה. (Ifd8b3)
  • תוקנה בעיה ב-BackHandler שבה עדיין נעשה שימוש ב-onBack lambda שהוגדר קודם לכן אחרי הרכבה מחדש. (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 מכילה את הקומיטים האלה.

תכונות חדשות

  • יש עכשיו פונקציה 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 מכילה את הקומיטים האלה.

תיקוני באגים

  • תוקנה בעיה בכלי ליצירת פעילויות 1.3.0-alpha01 שגורמת לחריגה NoSuchMethodError: No static method setContent כשמשתמשים בכלי ליצירת פעילויות 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: עכשיו מתבצעת שמירה ושחזור תקינים של קריאות חוזרות (callback) של ActivityResultRegistry, כך שהקריאות החוזרות לא משוכפלות ב-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, אלפא, בטא או RC של גרסה חדשה יותר של 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 מכילה את הקומיטים האלה.

תיקוני באגים

  • תוקנה בעיה בבדיקת InvalidFragmentVersionForActivityResult lint שגרמה לתוצאת חיובית שגויה כשנעשה שימוש ב-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 שיקבלו קריאה חוזרת לפני בסיס Activity.onCreate().

    • תוסף Kotlin שניתן להשעיה withContextAvailable() מאפשר להריץ בלוק שלא ניתן להשעיה כשההקשר הופך לזמין ולהחזיר תוצאה.
    • FragmentActivity API משמש את FragmentActivity ב-Fragment 1.3.0 כדי לשחזר את המצב של FragmentManager. כל מאזין שנוסף לתת-מחלקות של FragmentActivity יפעל אחרי המאזין הזה.
    • ממשק ה-API הזה נמצא בשימוש ב-AppCompatActivity ב-AppCompat 1.3.0-alpha02 ומעלה. כל מאזין שנוסף לתת-מחלקות של AppCompatActivity יפעל אחרי המאזין הזה.
  • ViewTree Support: 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() עברה backport ב-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)

External Contribution

  • 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 לא המתין עד ש-Lifecycle היה STARTED לפני שהעביר תוצאות כשנרשם עם Lifecycle. (I109ea)

External Contribution

  • עדכנו את התיעוד של launch() כדי לציין במפורש שהוא יכול להחזיר ActivityNotFoundException. תודה למיכל ז'ילינסקי! (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(). כך נמנעת אפשרות של גלישת מספרים שלמים שנגרמת מהגדלה של קודי בקשה. (b/168779518)

  • Lifecycle observers are properly removed when calling unregister() on an 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() מאפשר להריץ בלוק שלא ניתן להשעיה כשההקשר הופך לזמין ולהחזיר תוצאה. (I8290c)
    • ‫API הזה משמש את FragmentActivity ב-Fragment 1.3.0-alpha08 כדי לשחזר את המצב של FragmentManager. כל מאזין שנוסף לתת-מחלקות של FragmentActivity יפעל אחרי המאזין הזה. (I513da)
    • ‫API הזה נמצא בשימוש ב-AppCompatActivity ב-AppCompat 1.3.0-alpha02. כל מאזין שנוסף לתת-מחלקות של AppCompatActivity יפעל אחרי המאזין הזה. (I513da)

תיקוני באגים

  • תוקנה בעיה בActivityResultFragmentVersionDetectorבדיקת Lint שגרמה להפסקת הפעולה שלה כשנעשה שימוש ב-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 מכילה את הקומיטים האלה.

תכונות חדשות

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

External Contribution

  • תוקנה ArrayIndexOutOfBoundsException במהלך ניתוח התוצאות של חוזה התוצאות של פעילות 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 לקריאה החוזרת הרשומה. (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 extensions ל-launch עבור ActivityResultLauncher<Void> ו-ActivityResultLauncher<Unit>, שמבטלת את הצורך להעביר את null או Unit, בהתאמה, ומשקפת את ההתנהגות הזו מה-extensions הקודמים של invoke().androidx.activity.result (aosp/1304674, aosp/1304675)
  • השיטות IntentSenderRequest.Builder עבור setFlagsMask() ו-setFlagsValues() שולבו לשיטה אחת setFlags(). (aosp/1302111)

תיקוני באגים

  • כשרושמים ActivityResultCallback עם LifecycleOwner, תוקנה בעיה שבה הקריאה החוזרת הופעלה לפני שהמצב הגיע ל-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 ל-APIs של 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 כדי לספק סטטוס 'הוענקה' אם ההרשאות המבוקשות כבר הוענקו. (b/151110799)
  • החוזה Dial שהיה זמין בעבר הוסר כי הוא לא מיועד לשימוש עם startActivityForResult().Intent ‪(aosp/1266916)
  • הרבה ממשקי Activity Result 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 מכילה את הקומיטים האלה.

תכונות חדשות

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

תיקוני באגים

  • תוקנה רגרסיה שהוצגה בגרסה 1.1.0 של Activity כשמריצים אותה בגרסאות ישנות יותר של הפלטפורמה, שבהן 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

  • שילוב של Lifecycle ViewModel SavedState: SavedStateViewModelFactory הוא עכשיו ברירת המחדל של factory שמשמשת כשמשתמשים ב-by viewModels(), בבונה 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 stable.

גרסה 1.1.0-alpha03

‫5 בספטמבר 2019

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

תכונות חדשות

  • הפעילות תלויה עכשיו בגרסה יציבה של 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 יוצאות לאור. כאן אפשר לראות את הקומיטים שכלולים בגרסה הזו.

תכונות חדשות

  • SavedStateViewModelFactory היא עכשיו ברירת המחדל של ה-factory שמשמשת כשמשתמשים ב-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 יוצאות לאור. כאן אפשר לראות את הקומיטים שכלולים בגרסה הזו.

תכונות חדשות

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

גרסה 1.0.0

גרסה 1.0.0

‫5 בספטמבר 2019

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

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

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

גרסה 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. כאן אפשר לראות את הקומיטים שכלולים בגרסה הזו.

גרסה 1.0.0-alpha08

7 במאי 2019

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

שינויים ב-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 יוצאות לאור. כאן אפשר לראות את הקומיטים שכלולים בגרסה הזו.

שינויים ב-API

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

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

שינויים ב-API

  • המחלקות ComponentActivity מכילות עכשיו בנאי שני שמקבל @LayoutRes int, שמחליף את ההתנהגות הקודמת של הוספת הערה למחלקת AppCompatActivity באמצעות @ContentView. הגישה הזו פועלת גם במודולים של אפליקציות וגם במודולים של ספריות. (b/128352521)
  • ממשקי ה-API הקשורים של OnBackPressedCallback ב-ComponentActivity הוצאו משימוש לטובת OnBackPressedDispatcher החדש, שאפשר לאחזר באמצעות getOnBackPressedDispatcher(). (aosp/922523)
  • השיטות להוספת OnBackPressedCallback חדש ל-OnBackPressedDispatcher מחזירות עכשיו אובייקט Cancellable, שמאפשר להסיר את הקריאה החוזרת בלי לדרוש הפניה מפורשת ל-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 property delegate חדש לאחזור ViewModel מ-ComponentActivity.
  • אירועי קלט בהמתנה (כמו קליקים) מבוטלים עכשיו ב-onStop().

שינויים ב-API

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