פעילות
העדכון האחרון | גרסה יציבה | גרסה מועמדת להפצה | גרסת בטא | גרסה אלפא |
---|---|---|---|---|
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
: תוקנה בעיה שבה ממשק ה-APIPredictiveBackHandler
של 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 כוללת את ההוספות האלה.
עדכון יחסי תלות
- הפעילות תלויה עכשיו ב-Profile Installer 1.3.1.
גרסה 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 מכילה את ההצהרות האלה.
אזהרה על שגיאות בקוד
- בממשקי ה-API
OnBackPressedCallback
, BackHandler
ו-PredictiveBackHandler
מופיעה עכשיו אזהרה כשקוראים ל-onBackPressedDispatcher.onBackPressed()
בזמן טיפול בלחצן 'הקודם', כי הפעולה הזו תמיד תפר את האנימציה החזויה של תנועת החזרה. פרטים נוספים זמינים במדריך לשיטות מומלצות. (1e4222, 2c950d, b/287505200)
תיקוני באגים
- אם אירוע החזרה נשלח מהמערכת שהתחיל במהלך תנועת חזרה חזויה שכבר פועלת, תנועת החזרה החזויה שרצה כרגע תבוטל ואירוע החזרה החדש יתחיל לפעול כדי להתחיל תנועת חזרה חזויה חדשה. (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. התוספים של KotlinActivityResult
שתומכים בפירוק מבנה לשדות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)
עדכון יחסי תלות
- הפעילות תלויה עכשיו ב-Core
1.13.0-alpha01
. (I14f31)
גרסה 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
ל-APIenableEdgeToEdge
, עכשיו אפשר לשנות את הפרמטר lambdadetectDarkMode
כדי לספק לוגיקה מותאמת אישית לזיהוי מצב לילה. (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.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
משוחררות. הגרסה הזו שוחררה מענף פנימי.
תיקוני באגים
- מ-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
נעשה עכשיו שימוש ב-KotlinRandom
במקום ב-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.7.0-rc01
: הפעילות תלויה עכשיו ב-Lifecycle 2.6.0
.
גרסה 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
מקבלת שיטה להשהיה, וכשהיא מסתיימת, היא מציינת שאתם מוכנים לאינטראקציה.
עדכוני יחסי תלות
- הפעילות תלויה עכשיו במחזור חיים
2.6.1
. (8fc31d) - הפעילות תלויה עכשיו ב-ProfileInstaller
1.3.0
. (83d3b1)
גרסה 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 כוללת את השמירות האלה.
עדכון יחסי תלות
- הפעילות תלויה עכשיו ב-
Lifecycle 2.6.0
.
גרסה 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)
עדכון יחסי תלות
- עכשיו הספרייה
Activity
תלויה ב-Lifecycle2.5.1
. (If6697)
גרסה 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.5.1
: הספרייהActivity
תלויה עכשיו בגרסה2.5.1
שלLifecycle
. (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
שבה ניסיון ליצור בקשה, דרך ה-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)
עדכון יחסי תלות
- עכשיו הספרייה
Activity
תלויה במחזור החיים2.5.1
. (If6697)
גרסה 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
- ComponentDialog –
ComponentDialog
הוא תת-סוג של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 כוללת את ההצהרות האלה.
עדכוני יחסי תלות
- הפעילות תלויה עכשיו במחזור חיים
2.4.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
קוראת עכשיו גם ל-superonPanelClosed()
, וכך נפתרה בעיה שבה לא הייתה קריאה לשיטה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, שהוצג כחלק מ-Lifecycle2.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
, שמונעת קריאה ל-methodlaunch
של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)
תרומה חיצונית
גרסה 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)
עדכוני יחסי תלות
- מ-Activity 1.2.2: הפעילות תלויה עכשיו ב-Lifecycle
2.3.1
.
גרסה 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
כשמשתמשים ב-Compose1.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)
עדכוני יחסי תלות
- הפעילות תלויה עכשיו במחזור חיים
2.3.1
.
גרסה 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
יפעלו אחרי המאזין הזה.
- תוסף Kotlin עם השהיה
תמיכה ב-
ViewTree
:ComponentActivity
תומך עכשיו בממשקי ה-APIViewTreeLifecycleOwner.get(View)
,ViewTreeViewModelStoreOwner.get(View)
ו-ViewTreeSavedStateRegistryOwner
שנוספו ב-Lifecycle2.3.0
וב-SavedState1.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)
- תוסף Kotlin עם השהיה
תיקוני באגים
- תוקנה בעיה בבדיקת 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
, שמאשרת שאתם משתמשים ב-Fragment1.3.0-alpha07
כשאתם משתמשים ב-Activity Result API. כך תוכלו למנוע קריסות בסביבת זמן הריצה בגלל בעיות מסוג 'קוד הבקשה לא חוקי' ובקשות הרשאה לא תקינות שנגרמות משימוש בגרסאות ישנות יותר של קטעי קוד. (b/152554847)
תרומה חיצונית
- תוקנה שגיאת
ArrayIndexOutOfBoundsException
במהלך ניתוח התוצאות של חוזה Activity ResultRequestPermission
. (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 מכילה את ההוספות האלה.
תכונות חדשות
- נוספה תמיכה ב-
ViewTreeViewModelStoreOwner
מ-Lifecycle2.3.0-alpha03
וב-ViewTreeSavedStateRegistryOwner
מ-SavedState1.1.0-alpha01
כשמשתמשים ב-View
בתוךComponentActivity
. (aosp/1297993, aosp/1300264)
שינויים ב-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
כאן וגם ב-Fragment1.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)
שנוסף ב-Lifecycle2.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()
, ב-constructorViewModelProvider
או ב-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 SavedState1.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 יציב.
תיקוני באגים
- הפעילות תלויה עכשיו במחזור חיים
2.2.0-alpha04
.
גרסה 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
תלוי ב-Lifecycle2.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
ב-Fragment1.1.0
, וכתוצאה מכך, גם שלAppCompatActivity
ב-AppCompat1.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
- הוספנו הערה שאסור לשנות את
getViewModelStore()
, והיא תהיה סופית בגרסה עתידית. אם אתם משנים את השיטה הזו כרגע, עליכם לשלוח בקשה להוספת תכונה. (aosp/837619)
תיקוני באגים
- המודול
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
- נוספה הערה שאסור לשנות את הערך של
getLifecycle()
, והוא ישתנה ל-final
בגרסה עתידית. אם אתם משנים את השיטה הזו, עליכם לשלוח בקשה להוספת תכונה. (aosp/815834)
גרסה 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
כדי לאחסן אובייקטים שצריכים לשרוד שינויים בתצורה.