ב-Android 12 (רמת API 31) בוצע שדרוג של Widgets API הקיים כדי לשפר את חוויית המשתמש והמפתחים בפלטפורמה ובמרכזי האפליקציות. במדריך הזה מוסבר איך לוודא שהווידג'ט תואם ל-Android 12, וגם כחומר עזר בנושא ממשקי API לרענון הווידג'ט הקיים.
מוודאים שהווידג'ט תואם ל-Android 12
לווידג'טים ב-Android 12 יש פינות מעוגלות. כשמשתמשים בווידג'ט של אפליקציה במכשיר עם Android מגרסה 12 ואילך, מרכז האפליקציות מזהה באופן אוטומטי את הרקע של הווידג'ט וחותוך אותו כך שיהיו לו פינות מעוגלות.
בתרחיש הזה, יכול להיות שהווידג'ט לא יוצג כמו שצריך באחד מהתנאים הבאים:
הווידג'ט מכיל תוכן בפינות: כתוצאה מכך, יכול להיות שחלק מהתוכן באזור הפינה ייחתוך.
הווידג'ט כולל רקע שלא ניתן לחתוך. למשל, רקע שקוף, תצוגות או פריסות ריקות או כל סוג אחר של רקע מיוחד שלא נוטה לחיתוך. יכול להיות שהמערכת לא תצליח לזהות בצורה נכונה את הרקע שבו רוצים להשתמש.
אם השינוי הזה ישפיע על הווידג'ט, מומלץ לרענן אותו באמצעות פינות מעוגלות (כמו שמתואר בקטע הבא) כדי לוודא שהוא מוצג כמו שצריך.
שימוש בדוגמה
כדי לראות את כל ממשקי ה-API האלה בפעולה, אפשר לעיין בווידג'ט לדוגמה של רשימה.
מומלץ להטמיע פינות מעוגלות
ב-Android 12 נוספו הפרמטרים המערכתיים system_app_widget_background_radius
ו-system_app_widget_inner_radius
, שמאפשרים להגדיר את הרדיוס של הפינות המעוגלות של הווידג'ט.
1 פינה של הווידג'ט.
2 פינת תצוגה בתוך הווידג'ט.
פרטים נוספים מופיעים במאמר הטמעת פינות מעוגלות.
הוספת נושאי מכשיר
החל מ-Android 12, בווידג'טים אפשר להשתמש בצבעי העיצוב של המכשיר ללחצנים, לרקעים ולרכיבים אחרים, כולל עיצוב בהיר ועיצוב כהה. כך אפשר ליהנות ממעברים חלקים יותר ועקביות בין ווידג'טים שונים.
מידע נוסף זמין במאמר הוספת עיצוב מותאם אישית למכשיר.
קל יותר להתאים אישית ווידג'טים
אם מציינים פעילות הגדרה באמצעות המאפיין configure
של appwidget-provider
, המארח של הווידג'ט של האפליקציה מפעיל את הפעילות הזו מיד אחרי שהמשתמש מוסיף את הווידג'ט למסך הבית.
ב-Android 12 נוספו אפשרויות חדשות שיעזרו לכם לספק למשתמשים חוויית הגדרה טובה יותר. פרטים נוספים זמינים במאמר איך מאפשרים למשתמשים להגדיר ווידג'טים.
הוספת לחצנים מורכבים חדשים
ב-Android 12 נוספה תמיכה חדשה בהתנהגות עם מצב באמצעות הרכיבים הקיימים הבאים:
הווידג'ט עדיין ללא שמירת מצב. האפליקציה צריכה לאחסן את המצב ולהירשם לאירועים של שינוי מצב.
פרטים נוספים זמינים במאמר תמיכה בהתנהגות עם מצב.
שימוש בממשקי API משופרים לגדלים ולפריסות של ווידג'טים
החל מ-Android 12, תוכלו לנצל את היתרונות של מאפייני גודל מדויקים יותר ופריסות גמישות יותר, על ידי ציון מגבלות נוספות של גודל הווידג'ט ובאמצעות פריסות רספונסיביות ופריסות מדויקות.
פרטים נוספים זמינים במאמר הצגת ווידג'טים בפריסות גמישות.
שיפור חוויית השימוש בבורר הווידג'טים של האפליקציה
ב-Android 12 אפשר לשפר את החוויה של בוחר הווידג'טים לאפליקציה על ידי הוספת תצוגות מקדימות דינמיות לווידג'טים ותיאורי ווידג'טים. למידע נוסף, ראו הוספת תצוגות מקדימות של ווידג'טים שניתן לשנות את הגודל שלהם לבורר הווידג'טים והוספת תיאור לווידג'ט.
הפעלת מעברים חלקים יותר
החל מ-Android 12, מרכזי אפליקציות מספקים מעבר חלק יותר כשמשתמש מפעיל את האפליקציה שלך באמצעות ווידג'ט. פרטים נוספים זמינים במאמר הפעלת מעברים חלקים יותר.
שימוש בקולקציות RemoteViews
פשוטות
ב-Android 12 נוספה השיטה setRemoteAdapter(int viewId, RemoteViews.RemoteCollectionItems items)
, שמאפשרת לאפליקציה להעביר אוסף ישירות כשמאכלסים ListView
. בעבר, כשהשתמשתם ב-ListView
, הייתם צריכים להטמיע ולצהיר על RemoteViewsService
כדי להחזיר את הערך RemoteViewsFactory
.
פרטים נוספים זמינים במאמר שימוש באוספים של RemoteViews
.
שימוש בשינוי בזמן ריצה של RemoteViews
ב-Android 12 נוספו כמה methods של RemoteViews
שמאפשרות לשנות את מאפייני RemoteViews
בסביבת זמן הריצה. הרשימה המלאה של השיטות שנוספו מפורטת בהפניית ה-API של RemoteViews
.
פרטים נוספים זמינים במאמר שימוש בשינוי של RemoteViews
בסביבת זמן הריצה.