העברת אפליקציות ל-Android 11

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

המשתמשים יכולים להתחיל לקבל את הפלטפורמה החדשה ברגע שקוד המקור שלה יפורסם ב-AOSP (פרויקט Android בקוד פתוח). לכן חשוב שהאפליקציות יהיו מוכנות, יפעלו כמצופה עבור המשתמשים וינצלו את התכונות החדשות ואת ממשקי ה-API כדי להפיק את המרב מהפלטפורמה החדשה.

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

תהליך ההעברה הרגיל כולל שני שלבים שיכולים להתבצע במקביל:

  • הבטחת תאימות של אפליקציות (עד לגרסה הסופית של Android 11)
  • טירגוט התכונות והממשקי ה-API החדשים של הפלטפורמה (בהקדם האפשרי אחרי השחרור הסופי)

בדף הזה מפורטים השלבים הכלליים לכל אחד מהשלבים האלה. כשמוכנים להתחיל, אפשר לקרוא את המאמר קבלת Android 11.

הבטחת תאימות ל-Android 11

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

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

לפני שמתחילים, חשוב לקרוא על השינויים בהתנהגות שעלולים להשפיע על האפליקציה, גם אם לא משנים את targetSdkVersion שלה.

ביצוע בדיקות תאימות

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

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

חשוב גם לבדוק את האפליקציה ולוודא שלא נעשה בה שימוש בממשקים מוגבלים שאינם ב-SDK, ולעבור במקום זאת לגרסאות מקבילות ב-SDK הציבורי או ב-NDK. כדאי לעקוב אחרי אזהרות logcat שמדגישות את הגישות האלה, ולהשתמש בשיטה StrictMode‏ detectNonSdkApiUsage() כדי לזהות אותן באופן פרוגרמטי.

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

אחרי שתסיימו את הבדיקות ותבצעו את העדכונים, מומלץ לפרסם את האפליקציה התואמת מיד. כך המשתמשים יכולים לבדוק את האפליקציה בשלב מוקדם, ואתם יכולים לספק למשתמשים מעבר חלק כשהם מעדכנים ל-Android 11.

עדכון הטירגוט של האפליקציה וגרסת ה-build באמצעות ממשקי API חדשים

אחרי שמפרסמים את הגרסה התואמת של האפליקציה כמו שמתואר למעלה, השלב הבא הוא להוסיף תמיכה מלאה ב-Android 11 על ידי עדכון targetSdkVersion וניצול היתרונות של ממשקי API ויכולות חדשים ב-Android 11. אפשר לבצע את הפעולות האלה ברגע שמוכנים, תוך התחשבות בדרישה של Google Play לטירגוט הפלטפורמה החדשה.

כדי לתכנן את העבודה כך שתהיה תמיכה מלאה ב-Android 11, כדאי להתחיל עם עיון בשינויים בהתנהגות שחלים על אפליקציות שמטרגטות את Android 11. השינויים הממוקדים בהתנהגות האלה עלולים לגרום לבעיות בפונקציונליות, ולכן כדאי לטפל בהן. במקרים מסוימים, יכול להיות שיידרש פיתוח משמעותי, ולכן מומלץ ללמוד עליהם מוקדם ככל האפשר. כדי להעריך את ההשפעות, אפשר גם להשתמש במתגי התאימות כדי לבדוק את האפליקציה הנוכחית עם שינויים נבחרים שמופעלים.

בשלבים הבאים מוסבר איך לתמוך באופן מלא ב-Android 11.

קבלת ה-SDK, שינוי הטירגוט, פיתוח באמצעות ממשקי API חדשים

כדי להתחיל להשתמש בתמיכה מלאה ב-Android 11, קודם צריך להוריד את Android 11 SDK (ואת כל הכלים האחרים שנדרשים) ל-Android Studio. לאחר מכן משנים את הערכים של targetSdkVersion ו-compileSdkVersion באפליקציה ל-"30"ומקמפלים מחדש את האפליקציה. פרטים נוספים זמינים במדריך ההגדרה.

בדיקת האפליקציה ל-Android 11

אחרי שמקמפלים את האפליקציה ומתקינים אותה במכשיר עם Android 11, מתחילים לבדוק כדי לוודא שהאפליקציה פועלת כמו שצריך כשמטרגטים את Android 11. חלק מהשינויים בהתנהגות חלים רק כשהאפליקציה שלכם מטרגטת את הפלטפורמה החדשה, ולכן מומלץ לעיין בשינויים האלה לפני שמתחילים.

בדומה לבדיקות תאימות בסיסיות, צריך לבדוק את כל התהליכים והפונקציות כדי לזהות בעיות. מומלץ להתמקד בבדיקות של שינויים בהתנהגות של אפליקציות שמטרגטות ל-Android 11. חשוב במיוחד לבדוק את השינויים שקשורים לפרטיות ולבדוק את כל התיקונים שאתם מטמיעים כדי להתאים את עצמכם לשינויים. זה גם זמן טוב לבדוק את האפליקציה לפי הנחיות האיכות העיקריות לאפליקציות והשיטות המומלצות לבדיקה.

חשוב לבדוק את האפליקציה ולוודא שאין בה שימוש בממשקים מוגבלים שאינם SDK שעשויים לחול. כדאי לעקוב אחרי אזהרות logcat שמדגישות את הגישות האלה ולהשתמש בשיטה detectNonSdkApiUsage() של StrictMode כדי לזהות אותן באופן פרוגרמטי.

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

בדיקה באמצעות מתגים של תאימות אפליקציות

ב-Android 11 מוצגת תכונה חדשה למפתחים, שמקלה על בדיקת האפליקציה עם שינויים ממוקדים בהתנהגות. באפליקציה שאפשר לנפות בה באגים, המתגים מאפשרים לכם:

  • בדיקת שינויים מטורגטים בלי לשנות בפועל את targetSdkVersion של האפליקציה. אתם יכולים להשתמש במתגים כדי להפעיל בכוח שינויים ספציפיים בהתנהגות של טירגוט, כדי להעריך את ההשפעה על האפליקציה הקיימת.
  • מתמקדים בבדיקה של שינויים ספציפיים בלבד. במקום לטפל בכל השינויים המטורגטים בבת אחת, אפשר להשתמש במתגים כדי להשבית את כל השינויים המטורגטים חוץ מאלה שרוצים לבדוק.
  • ניהול מתגים באמצעות adb אתם יכולים להשתמש בפקודות adb כדי להפעיל ולהשבית את השינויים שניתנים להפעלה והשבתה בסביבת הבדיקה האוטומטית שלכם.
  • ניפוי באגים מהיר יותר באמצעות מזהי שינוי סטנדרטיים. לכל שינוי שאפשר להפעיל או להשבית יש מזהה ושם ייחודיים שאפשר להשתמש בהם כדי לנפות במהירות את שורש הבעיה בפלט של היומן.

המתגים יכולים לעזור לכם להתכונן לשינוי הטירגוט של האפליקציה, או בזמן שאתם מפתחים תמיכה ב-Android 11. לפרטים נוספים, אפשר לעיין במסמכים הרלוונטיים.