באפליקציית ההגדרות ב-Android יש מסך שנקרא אפשרויות למפתחים, שבו אפשר להגדיר התנהגויות מערכת שיעזרו לכם ליצור פרופיל של ביצועי האפליקציה ולפתור באגים. לדוגמה, תוכלו להפעיל ניפוי באגים דרך USB, לצלם דוח באגים, להפעיל משוב חזותי להקשות, להציג הבהוב על פני השטח של חלונות כשהם מתעדכנים, להשתמש ב-GPU לרינדור של גרפיקה דו-ממדית ועוד.
הפעלת האפשרויות למפתחים
ב-Android מגרסה 4.1 ומטה, המסך אפשרויות למפתחים זמין כברירת מחדל. ב-Android 4.2 ואילך, צריך להפעיל את המסך הזה.
הערה: במכשירים מסוימים, המסך Developer options (אפשרויות למפתחים) עשוי להיות ממוקם או נקרא בשם אחר.
-
במכשיר, מאתרים את האפשרות מספר Build. בטבלה הבאה מוצג המיקום של ההגדרות של מספר ה-build במכשירים שונים:
מכשירים הגדרה Google Pixel
הגדרות > מידע על הטלפון > מספר Build
Samsung Galaxy S8 ודגמים חדשים יותר
הגדרות > מידע על הטלפון > פרטי תוכנה > מספר Build
LG G6 ואילך
הגדרות > מידע על הטלפון > פרטי התוכנה > מספר Build
HTC U11 ודגמים חדשים יותר
הגדרות > מידע כללי > פרטי התוכנה > עוד > מספר build או הגדרות > מערכת > מידע על הטלפון > פרטי התוכנה > עוד > מספר build
OnePlus 5T ואילך
הגדרות > מידע על הטלפון > מספר Build
-
מקישים שבע פעמים על האפשרות מספר Build עד שמופיעה ההודעה
You are now a developer!
הפעולה הזו מפעילה את האפשרויות למפתחים במכשיר. חוזרים למסך הקודם ומאתרים את האפשרות אפשרויות למפתחים בתחתית המסך.
בחלק העליון של המסך אפשרויות למפתחים, אפשר להפעיל או להשבית את האפשרויות, כפי שמוצג באיור 1. להשאיר את האפשרות הזו מופעלת. כשהאפשרות הזו מושבתת, רוב האפשרויות מושבתות, מלבד אלה שלא דורשות תקשורת בין המכשיר למחשב הפיתוח.
הפעלת ניפוי באגים ב-USB במכשיר
כדי להשתמש בכלי לניפוי באגים ובכלים אחרים, צריך להפעיל את האפשרות לניפוי באגים ב-USB. הפעולה הזו תאפשר ל-Android Studio ולכלי SDK אחרים לזהות את המכשיר שלך כשהוא מחובר באמצעות USB.
מפעילים את האפשרות ניפוי באגים ב-USB בהגדרות המערכת של המכשיר בקטע אפשרויות למפתחים. האפשרות הזו מופיעה באחד מהמיקומים הבאים, בהתאם לגרסה של Android:
- Android בגרסה 9 (רמת API 28) ואילך: הגדרות > מערכת > מתקדם > אפשרויות למפתחים > ניפוי באגים ב-USB
- Android 8.0.0 (רמת API 26) ו-Android 8.1.0 (רמת API 27): הגדרות > מערכת > אפשרויות למפתחים > ניפוי באגים ב-USB
- Android 7.1 (API ברמה 25) ומטה: הגדרות > אפשרויות למפתחים > ניפוי באגים ב-USB
אפשרויות כלליות
מקישים על משבצות למפתחים של ההגדרות המהירות כדי להוסיף את האפשרויות למפתחים שנבחרו לחלונית ההגדרות המהירות.
אחרי שבוחרים משבצת אחת או יותר מהמשבצות הזמינות, שמוצגות באיור 2, פותחים את חלונית ההגדרות המהירות ומקישים על העיפרון כדי להיכנס למצב עריכה. לאחר מכן, גוררים את כרטיסי המידע למפתחים מחלונית המשבצות לחלונית ההגדרות המהירות, ומקישים שוב על העיפרון כדי לצאת ממצב העריכה.
אפשרויות כלליות נוספות כוללות:
- זיכרון: מוצגים נתונים סטטיסטיים על הזיכרון, כמו השימוש הממוצע בזיכרון, ביצועי הזיכרון, נפח הזיכרון הכולל שזמין, נפח הזיכרון הממוצע בשימוש, נפח הזיכרון הפנוי ונפח הזיכרון שבו נעשה שימוש על ידי האפליקציות.
- מילוי דוח על באג: קבלת עותק של קובצי היומן הנוכחיים של המכשיר כדי לשתף אותם עם מישהו. כשמתקבלת התראה על כך שהדוח על הבאג מוכן, מקישים על ההתראה כדי לשתף אותה.
- מצב הדגמה בממשק המשתמש של המערכת: מאפשר לכם לצלם בקלות צילומי מסך נקיים יותר, על ידי הצגת סרגל התראות כללי מוגדר מראש שלא מציג התראות או אזהרות על סוללה חלשה.
הפעלת מצב הדגמה מאפשרת לשנות את המראה של סרגל הסטטוס באמצעות
פקודות מצב הדגמה של
adb
. לחלופין, אפשר להשתמש באפשרות הצגת מצב הדגמה כדי להסתיר את ההתראות ולהציג שורת סטטוס מוגדרת מראש. - סיסמת גיבוי למחשב: הגדרת סיסמת גיבוי כדי שתוכלו להשתמש בפקודות
adb
כדי לגבות ולשחזר אפליקציות ונתונים במכשיר שמוגנים באמצעות סיסמה. - המסך לא ייכבה: ההגדרה הזו מאפשרת למסך להישאר פעיל בזמן שהמכשיר מחובר לחשמל.
- הפעלת יומן snoop של Bluetooth Host Controller (HCI): תיעוד כל חבילות ה-HCI של Bluetooth בקובץ שמאוחסן ב-
/sdcard/btsnoop_hci.log
. אפשר לאחזר את החבילות ולהשתמש בתוכנה כמו Wireshark כדי לנתח את המידע ולפתור את הבעיות.
ניפוי באגים
אפשרויות לניפוי באגים מספקות דרכים להגדרת ניפוי באגים במכשיר וליצור תקשורת בין המכשיר למחשב הפיתוח.
מפעילים את ניפוי הבאגים ב-USB, כפי שמתואר באיור 3, כדי שמכשיר Android יוכל לתקשר עם מכונת הפיתוח דרך Android Debug Bridge (adb). האפשרות Wait for Debugger לא זמינה עד שמשתמשים ב-Select debug app כדי לבחור את האפליקציה לניפוי באגים. אם מפעילים את האפשרות המתנה לניפוי באגים, האפליקציה שנבחרה תמתין שהכלי לניפוי באגים יתחבר אליה לפני שהיא תתחיל לפעול.
אפשרויות נוספות לניפוי באגים כוללות את האפשרויות הבאות:
- Store logger data persistently on device:בוחרים את סוג הודעות היומן שרוצים לשמור באופן קבוע במכשיר. האפשרויות הן 'מושבת', 'הכול', 'הכול מלבד רדיו' או 'ליבה בלבד'.
- בחירת אפליקציה שמדמה את מיקום המכשיר: משתמשים באפשרות הזו כדי לזייף את מיקום ה-GPS של המכשיר כדי לבדוק אם האפליקציה פועלת באותו אופן במיקומים אחרים. כדי להשתמש באפשרות הזו, צריך להוריד ולהתקין אפליקציה של מיקום GPS מדומה.
- Enable view attribute inspection:שמירת המידע על מאפייני התצוגה במשתנה החבר
mAttributes
של מופעView
, כדי שניתן יהיה להשתמש בו לניפוי באגים. אפשר לגשת למידע על המאפיינים דרך ממשק המשתמש של Layout Inspector, כפי שמוצג באיור 4. אם האפשרות הזו לא מופעלת, הפריט Attributes לא יהיה זמין. - הפעלת שכבות לניפוי באגים ב-GPU: התכונה הזו זמינה במכשירי Android מגרסה 9 (API ברמה 28) ואילך. יש להפעיל את האפשרות הזו כדי לאפשר טעינה של שכבות אימות של Vulkan מהאחסון המקומי של המכשיר. למידע נוסף, קראו את המאמר שכבות אימות של Vulkan ב-Android.
רשתות
אפשרויות הרשתות מספקות דרכים להגדרת הגדרות Wi-Fi ו-DHCP.
מקישים על בחירת הגדרת USB כדי לציין איך המחשב יזהה את המכשיר. כפי שמוצג באיור 5, ניתן להגדיר מכשירים לטעינה בלבד, להעברת קבצים (MTP), להעברת תמונות (PTP), לשימוש באינטרנט הנייד במחשב (RNDIS) או להעברת קובצי אודיו או MIDI.
מקישים על גרסת Bluetooth AVRCP ובוחרים את גרסת הפרופיל שבה רוצים להשתמש כדי לשלוט בציוד האודיו/וידאו של Bluetooth שיש למכשיר גישה אליו.
בנוסף, כדי לשפר את איכות האודיו במכשיר, מקישים על האפשרויות הבאות ומגדירים אותן:
- קודק אודיו ל-Bluetooth: כדי לשנות את איכות הצליל (קודק) של המכשירים, בוחרים באחד מהקודקים הבאים:
- SBC: העברת נתונים למכשירי פלט אודיו של Bluetooth, כמו אוזניות ורמקולים.
- AAC: איכות סאונד טובה יותר ממכשירים עם חיבור קווי בהשוואה ל-MP3 בשיעורי ביטים דומים.
- aptX: נותן צליל אלחוטי בסמארטפונים, ברמקולים, בסטריאו בר, באוזניות ובטאבלטים באיכות גבוהה.
- aptX HD: סטרימינג ברזולוציה גבוהה למכשירי Bluetooth.
- LDAC: מאפשרת להאזין למוזיקה באיכות גבוהה בחיבור אלחוטי.
- Enable Optional Codecs ו-Disable Optional Codecs: אם התקנתם הטמעות נוספות של קודיקים, תוכלו להשתמש באפשרויות האלה כדי להפעיל אותן ולהשבית אותן.
- טווח דגימות של אודיו ל-Bluetooth: שינוי מספר הדגימות של האודיו לשנייה על ידי בחירת קצב דגימה של קודק אודיו. ככל ששיעור הדגימה גבוה יותר, כך נעשה שימוש במשאבים נוספים.
- ביטים של אודיו ל-Bluetooth לכל דגימה: מגדיר את מספר ביטים של מידע בכל דגימת אודיו. ככל שקצב העברת הנתונים גבוה יותר, הצליל טוב יותר אבל קובץ הדגימה גדול יותר.
- מצב ערוץ אודיו Bluetooth: בחירת מונו או סטריאו.
- קודק אודיו LDAC ל-Bluetooth: מבצע אופטימיזציה לצלילים כדי להגביר את איכות האודיו, לאזן בין איכות האודיו לבין איכות החיבור, לשפר את איכות החיבור או להשתמש בקצב העברת נתונים מותאם כדי לאזן בין איכות האודיו לאיכות החיבור.
ברשימה הבאה מפורטות דרכים נוספות להגדרת Wi-Fi ו-DHCP:
- אישור של תצוגת Wi-Fi: מאפשר להגדיר בקרות והגדרות מתקדמות לאישור של תצוגת Wi-Fi בהתאם למפרטים שמפורטים במפרט של Wi-Fi Alliance לתצוגת Wi-Fi.
- הפעלת רישום מפורט של Wi-Fi ביומן: מעלה את רמת הרישום ביומן ה-Wi-Fi של כל רשת אלחוטית (SSID) שאליה מתחברים בהתאם לעוצמת האות הנכנסת היחסית (RSSI). מידע נוסף על יומנים זמין במאמר כתיבה והצגה של יומנים באמצעות Logcat.
- העברה אגרסיבית של Wi-Fi לרשת סלולרית: כשהאות נמוך, המערכת משפרת את היעילות של העברת חיבור הנתונים לרשת סלולרית דרך Wi-Fi.
קלט
הפעל את האפשרות הצגת הקשות כדי להציג הקשות כשאתה נוגע במסך. עיגול יופיע מתחת לאצבע או לסטיילוס ועוקב אחריכם כשזזים במסך. כשמצלמים סרטון במכשיר, הקשה פועלת כמו סמן.
מפעילים את האפשרות מיקום הסמן כדי להציג את מיקום הסמן (הקשה) במכשיר באמצעות שתי קווים צולבים. סרגל יופיע בחלק העליון של המסך כדי לעקוב אחרי הקואורדינטות של החץ, כפי שמוצג באיור 6. כשזזים את הסמן, הקואורדינטות בסרגל עוקבות אחרי המיקום של סמל הצלב ונתיב הסמן מופיע על המסך.
שרטוט
אפשרויות הציור מספקות רמזים חזותיים לגבי ממשק המשתמש של האפליקציה ואופן הפעולה שלו.
מפעילים את האפשרות Show Layout Bounds כדי להציג במכשיר את גבולות החיתוך, השוליים ורכיבים אחרים של ממשק המשתמש של האפליקציה, כפי שמוצג באיור 7.
אפשרויות שרטוט נוספות:
- קביעת הפריסה מימין לשמאל: אילוץ כיוון פריסת המסך מימין לשמאל (RTL) או משמאל לימין (ברירת המחדל).
- קנה המידה של אנימציית החלון: המדיניות הזו מגדירה את מהירות ההפעלה של אנימציית החלון, כדי שאפשר יהיה לבדוק את הביצועים שלה במהירויות שונות. ככל שההיקף נמוך יותר, המהירות גבוהה יותר.
- קנה מידה לאנימציית מעבר: הגדרת מהירות ההפעלה של אנימציית המעבר, כדי שתוכלו לבדוק את הביצועים שלה במהירויות שונות. ככל שההיקף נמוך יותר, המהירות גבוהה יותר.
- יצירת הדמיה של תצוגות משניות: יצירת תצוגה משנית כשכבת-על במכשיר.
האפשרות הזו שימושית כשרוצים לתמוך במסכים נוספים באמצעות ה-API של
Presentation
. מידע נוסף זמין במאמר מסכים משניים.
עיבוד מהיר באמצעות חומרה
אפשרויות עיבוד באמצעות האצת חומרה מספקות דרכים לבצע אופטימיזציה של האפליקציה לפלטפורמות היעד שלה, על ידי ניצול אפשרויות מבוססות-חומרה כמו GPU, שכבות חומרה וסינון אנטי-אליאסיינג (MSAA) במספר דגימות.
מקישים על יצירת הדמיה של מרחב צבעים כדי לשנות את ערכת הצבעים של ממשק המשתמש של המכשיר כולו. האפשרויות מתייחסות לסוגים של עיוורון צבעים. האפשרויות הן:
- מושבתת (ללא סימולציה של ערכת צבעים)
- מונוכרום (הגבלת ערכת הצבעים לשחור, לבן ואפור)
- דוטרנומליה (משפיעה על תצוגת אדום וירוק)
- פרוטנומליה (משפיעה על תצוגת אדום וירוק)
- טריטנומליה (משפיעה על הצגת הכחול והצהוב)
אם מצלמים צילומי מסך במרחב צבעים מדומה, הם נראים רגילים, כאילו לא שינית את ערכת הצבעים.
אפשרויות נוספות לניצול אפשרויות מבוססות-חומרה:
- Set GPU renderer: שינוי מנוע הגרפיקה Open GL שמוגדר כברירת מחדל למנוע הגרפיקה Open GL Skia.
- אילוץ עיבוד ב-GPU: אילוץ האפליקציות להשתמש ב-GPU לציור דו-ממדי אם הן נכתבו ללא עיבוד ב-GPU כברירת מחדל.
- הצגת עדכונים של תצוגת GPU: הצגת כל רכיב במסך ששורטט עם ה-GPU.
- ניפוי באגים של ציור יתר ב-GPU: הצגת קידוד צבעים במכשיר כדי שתוכלו לראות כמה פעמים אותו פיקסל צויר באותו פריים. התצוגה החזותית מראה איפה האפליקציה מבצעת יותר רינדור מהנדרש. מידע נוסף זמין במאמר תצוגה חזותית של ציור יתר ב-GPU.
- ניפוי באגים בפעולות באזור שאינו מלבני: השבתת אזור החיתוך בבד הציור כדי ליצור אזורים חריגים (לא מלבניים) בבד הציור. בדרך כלל, אזור החיתוך מונע ציור של כל דבר מחוץ למסגרת של אזור החיתוך העגול.
- אילוץ הפעלת 4x MSAA: הפעלת סינון אנטי-אליאסיינג (MSAA) במספר דוגמאות באפליקציות Open GL ES 2.0.
- השבתת שכבות-על של HW: השבתת שכבת-העל של החומרה. חשוב לזכור ששימוש בשכבת-העל של החומרה מאפשר לאפליקציות שמציגות משהו במסך להשתמש בפחות כוח עיבוד. בלי שכבת-העל, האפליקציות משתפות את הזיכרון של וידאו וצריך לבדוק כל הזמן אם יש התנגשויות וחיתוכים כדי ליצור תמונה תקינה. הבדיקה צורכת הרבה כוח עיבוד.
מדיה
מפעילים את האפשרות Disable USB audio routing כדי להשבית את הניתוב האוטומטי למכשירי אודיו חיצוניים שמחוברים למחשב דרך יציאת USB. ניתוב אוטומטי עלול להפריע לאפליקציות שתומכות ב-USB.
במכשירי Android מגרסה 11 ואילך, כשאפליקציה ללא הרשאת
RECORD_AUDIO
משתמשת ב-UsbManager
כדי לבקש גישה ישירה להתקן אודיו בחיבור USB עם יכולת הקלטת אודיו (כמו אוזניות בחיבור USB), תופיע הודעת אזהרה עם בקשה מהמשתמש לאשר את השימוש במכשיר. המערכת מתעלמת מכל אפשרות של 'שימוש תמיד', ולכן המשתמש צריך לאשר את האזהרה ולהעניק הרשאה בכל פעם שאפליקציה מבקשת גישה. כדי למנוע מצב כזה, האפליקציה צריכה לבקש את ההרשאה RECORD_AUDIO
.
מעקב
אפשרויות המעקב מספקות מידע חזותי על ביצועי האפליקציה, כמו פעילות GPU וחוט ארוך.
מקישים על עיבוד פרופיל ב-GPU ואז על במסך כעמודות כדי להציג את פרופיל העיבוד ב-GPU כעמודות, כפי שמוצג באיור 9. למידע נוסף, ראו מהירות העיבוד של פרופיל ב-GPU.
אפליקציות
אפשרויות האפליקציה עוזרות לכם להבין איך האפליקציה פועלת במכשיר היעד.
מקישים על מגבלת עיבוד ברקע כדי להגדיר את מספר התהליכים שיכולים לפעול ברקע בבת אחת. ההגדרות האפשריות מוצגות באיור 10.
מקישים על איפוס הגבלת הקצב ב-ShortcutManager במהלך הבדיקה כדי שאפליקציות ברקע יוכלו להמשיך לבצע קריאות לממשקי ה-API של קיצורי הדרך עד שיגיעו שוב למגבלת הקצב. למידע נוסף על קיצורי דרך ועל מגבלות קצב שליחת בקשות, ראו ShortcutManager
.
כדי להאריך את חיי הסוללה, מפעילים את האפשרות לא לשמור פעילויות. כך המערכת תהרוס כל פעילות ברגע שהמשתמש יוצא מהתצוגה הראשית של הפעילות.