באפליקציית ההגדרות ב-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 של ממשק הבקר המארח (HCI) של Bluetooth: איחוד של כל חבילות Bluetooth HCI בקובץ שמאוחסן ב-
/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
, כדי שניתן יהיה להשתמש בו לניפוי באגים. אפשר לגשת לפרטי המאפיינים דרך ממשק המשתמש של בודק הפריסה, כמו שמוצג באיור 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 Audio Bits Per sample:הגדרת מספר הביטים של המידע בכל דגימת אודיו. קצב העברת הנתונים גבוה יותר, ולכן הצליל טוב יותר, אבל הקובץ לדוגמה גדול יותר.
- מצב ערוץ אודיו 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. כשזזים את הסמן, הקואורדינטות בסרגל עוקבות אחרי המיקום של סמל הצלב ונתיב הסמן מופיע על המסך.
שרטוט
אפשרויות הציור מספקות רמזים חזותיים לגבי ממשק המשתמש של האפליקציה ואופן הפעולה שלו.
מפעילים את האפשרות הצגת גבולות פריסה כדי להציג את גבולות הקליפ, השוליים ומבני ממשק אחרים של ממשק המשתמש במכשיר, כפי שמוצג באיור 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: השבתת שכבת-העל של החומרה. חשוב לזכור ששימוש בשכבת-העל של החומרה מאפשר לאפליקציות שמציגות משהו במסך להשתמש בפחות כוח עיבוד. בלי שכבת-העל, האפליקציות משתפות את הזיכרון של וידאו וצריך לבדוק כל הזמן אם יש התנגשויות וחיתוכים כדי ליצור תמונה תקינה. הבדיקה צורכת הרבה כוח עיבוד.
מדיה
מגדירים את האפשרות השבתה של ניתוב אודיו ב-USB כדי להשבית ניתוב אוטומטי להתקני אודיו חיצוניים שמחוברים למחשב דרך יציאת USB. ניתוב אוטומטי עלול להפריע לאפליקציות שתומכות ב-USB.
ב-Android מגרסה 11 ואילך, כשאפליקציה ללא ההרשאה RECORD_AUDIO
משתמשת ב-UsbManager
כדי לבקש גישה ישירה למכשיר אודיו מסוג USB עם יכולת הקלטת אודיו (כמו אוזניות USB), מוצגת הודעת אזהרה שמבקשת מהמשתמש לאשר את ההרשאה לשימוש במכשיר. המערכת מתעלמת מכל אפשרות של 'להשתמש תמיד', ולכן המשתמש חייב לאשר את האזהרה ולהעניק הרשאה בכל פעם שאפליקציה מבקשת גישה. כדי למנוע את ההתנהגות הזו, האפליקציה צריכה לבקש את ההרשאה RECORD_AUDIO
.
מעקב
אפשרויות המעקב מספקות מידע חזותי על ביצועי האפליקציה, כמו פעילות GPU וחוט ארוך.
מקישים על עיבוד GPU של הפרופיל ואז על במסך כעמודות כדי להציג את פרופיל הרינדור של ה-GPU כעמודות, כפי שמוצג באיור 9. למידע נוסף, ראו מהירות העיבוד של פרופיל ב-GPU.
אפליקציות
האפשרויות לאפליקציה עוזרות לכם להבין איך האפליקציה פועלת במכשיר היעד.
מקישים על מגבלה של תהליכים ברקע כדי להגדיר את מספר התהליכים שיכולים לפעול ברקע בו-זמנית. ההגדרות האפשריות מוצגות באיור 10.
מקישים על איפוס הגבלת הקצב ב-ShortcutManager במהלך הבדיקה כדי שאפליקציות ברקע יוכלו להמשיך לבצע קריאות לממשקי ה-API של קיצורי הדרך עד שיגיעו שוב למגבלת הקצב. למידע נוסף על קיצורי דרך ועל מגבלות קצב שליחת בקשות, ראו ShortcutManager
.
כדי להאריך את חיי הסוללה, מפעילים את האפשרות לא לשמור פעילויות. כך המערכת תהרוס כל פעילות ברגע שהמשתמש יוצא מהתצוגה הראשית של הפעילות.