Android P תרסק כעת אפליקציות במקום לומר לך שהן לא מגיבות (מה שמכונה דיאלוג האפליקציה לא מגיבה או ANR). זוהי טקטיקה המשמשת כדי להגיע למפתחים עבור אפליקציות שאינן עשויות בצורה גרועה, והיא פשוט עשויה לעבוד.
בין כל תוספות חדשות לאנדרואיד P כולל מחוות ניווט חדשות, פרוסות API, ו API חדש של ביומטריה, ישנם כמה שינויים אחרים שעשויים להשפיע גם בצורה עדינה יותר. אחת מהן היא הסרת תיבות הדו-שיח של אפליקציה לא מגיבה (ANR) עבור אפליקציות בחזית. דו-שיח ANR מופיע כאשר משהו מונע מהשרשור הראשי של ממשק המשתמש להגיב. כאשר זה קורה באנדרואיד אוראו ומטה, דיאלוג ה-ANR מוצג למשתמש כדי ליידע אותו. כעת, באנדרואיד P, האפליקציה פשוט תתרסק ללא כל סוג של הודעה למשתמש.
למה לקרוס את האפליקציה מבלי לספר למשתמש מה קרה בפועל? זה לא בהכרח יתרון למשתמשים, אבל זה מאלץ מפתחים לשים לב במיוחד לבעיות מסוימות ולוודא שהבעיה נמנעת. מפתחים מוזמנים לא להפעיל שום דבר בשרשור הקדמי. בסרטון המקור המקושר למטה, Google דנה בפתרונות פוטנציאליים כדי למנוע בעיה זו, כולל ה AsyncTask API. המגבלות האחרונות של אנדרואיד על שירותי רקע אומרות שהמעבר לשירות הוא כנראה לא רעיון מצוין כאן. אנו ממליצים להקשיב להרצאה למטה אם אתה מעוניין ללמוד עוד על התמודדות עם בעיה זו:
הגישה של גוגל הגיונית, אבל האם זה יותר מדי? זה עשוי להראות שאפליקציות אנדרואיד קורסות בתדירות נמוכה יותר, אבל אם ההתראות פחות גלויות למשתמש אז מפתחים יצטרכו לפקוח עין על כלי הקריסה שלהם כמו דיווח על קריסה של Firebase ולא על משתמש ישיר מָשׁוֹב. אם אתה מפתח במהדורת הבטא האחרונה של P, אתה יכול להחזיר את דיאלוגי הקריסה האלה על ידי הפעלת הגדרה באפשרויות המפתחים.
זה לא השינוי היחיד באנדרואיד P לגבי הנראות של מה שהאפליקציות עושות ברקע. אנדרואיד אוראו הציגה את ההתראה המתמשכת כאשר אפליקציות מסוימות פעלו ברקע אם לאותה אפליקציה לא הייתה התראה בעדיפות גבוהה מספיק, אבל אנדרואיד P נפטר כעת לחלוטין מההודעה הזו. ההבדל היחיד הוא שתיבת הדו-שיח של ANR לא הייתה מעצבנת כמו הצבת הודעה מתמשכת.
דרך: /r/AndroidDev