יש שתי שיטות עיקריות לאיסוף פרופילים: איסוף פרופילים ידני ו-ProfilingManager API.
- איסוף פרופילים ידני כולל הפעלה ידנית של Perfetto במכשיר המקומי כדי להקליט פרופילים. אפשר לעשות את זה באמצעות פקודות כמו שמתואר במאמר תיעוד של עקבות מערכת באמצעות Perfetto, או באמצעות הלחצן 'הגדרות מהירות' כמו שמוסבר במאמר תיעוד באמצעות הלחצן 'הגדרות מהירות'.
ProfilingManagerמאפשר לאפליקציות לאסוף פרופילים בסביבת ייצור.
מומלץ להשתמש ב-ProfilingManager כדי לאסוף ולנתח נתונים ממספר רב של משתמשים או כדי לנפות באגים בבעיות נדירות. עם זאת, במקרים שבהם קל יותר לשחזר את הבעיות, יכול להיות שפרופיל ידני יהיה בחירה טובה יותר.
בטבלה הבאה מפורטים ההבדלים בין שתי השיטות האלה לתיעוד פרופילים:
| ProfilingManager | איסוף ידני של פרופילים | |
|---|---|---|
| הגדרת תזמון לפרופיל | עוד | פחות |
| מקור הפרופיל | מכשיר מקומי ומשתמשים ציבוריים | מכשיר מקומי בלבד |
| פלט הפרופיל | מצונזר | לא צונזר |
| יצירת פרופיל מבוסס-אירועים | כן | לא |
| התאמה אישית של הפרופיל | פחות | עוד |
| מדרגיות | רחב | נמוכה |
בקטעים הבאים מתוארים בקצרה ההבדלים בין השיטות של הקלטת הפרופיל.
הגדרת תזמון לפרופיל
ממשק ProfilingManager API מאפשר שליטה רבה יותר על התזמון של התחלת פרופיל או הפסקת פרופיל באפליקציה, בהשוואה ליצירת פרופיל ידנית, שבה יכול להיות קשה לאתחל את פרופיל התזמון. ProfilingManager גם מקל על יצירת פרופיל של התנהגות לא צפויה, כי אפשר לאסוף פרופיל גם אם אי אפשר לשחזר את ההתנהגות באופן מקומי.
מקור הפרופיל
באמצעות ProfilingManager, אפשר לאסוף נתונים ממשתמשים ציבוריים כדי למצוא ולתקן בעיות בביצועים. לעומת זאת, פרופיל ידני מאפשר לשחזר בעיות רק במכשיר שלכם.
פלט הפרופיל
ProfilingManager ואיסוף ידני יוצרים סוגים שונים של פלט פרופיל:
ProfilingManagerיוצר עקבות עם צנזורה. במעקב עם צנזורה מוצג מידע על התהליך של האפליקציה, אבל הנתונים מאפליקציות אחרות במערכת מוסתרים. מכיוון ש-ProfilingManagerאוסף את הנתונים ומצנזר אותם לפני שהוא מחזיר אותם, אתם יכולים לאסוף נתוני עקבות ממשתמשים ציבוריים תוך שמירה על הפרטיות שלהם, כי הנתונים מאפליקציות אחרות לא מוצגים.איסוף פרופילים ידני יוצר עקבות לא מצונזרות. כשמבצעים הקלטה ידנית של מעקב מערכת, יכול להיות שהפלט יכלול את כל התהליכים שפועלים במערכת. העקבות האלה לא מצונזרים ומציעים נתונים מלאים יותר לצורך ניפוי באגים, אבל אפשר לגשת אליהם רק באופן מקומי בגלל בעיות שקשורות לפרטיות.
יצירת פרופיל לפי אירוע
ProfilingManager יכול גם לאסוף פרופילים כשמתרחשים אירועים ספציפיים, כמו שגיאה מסוג 'האפליקציה לא מגיבה' (ANR) או הפעלה של האפליקציה. ProfilingManager
יטפל בהפעלה ובהפסקה של פרופילים לאיסוף נתונים מבוסס-אירועים.
התאמה אישית של הפרופיל
הפרופיל הידני מאפשר הכי הרבה התאמה אישית, בעוד שProfilingManager
מציע פחות אפשרויות התאמה אישית.
מדרגיות
ProfilingManager היא הדרך הכי טובה להרחבת המעקב, כי זו האפשרות היחידה שמאפשרת למפתחי אפליקציות להקליט פרופילים ממשתמשים ציבוריים. בעזרת ProfilingManager, אפשר להגדיר איסוף וניתוח של נתוני מעקב בקנה מידה גדול.
הפרופילים הידניים מוגבלים לשימוש מקומי.