اگر برنامه ای به آرامی پاسخ دهد، انیمیشن های متزلزل را نشان دهد، ثابت شود یا انرژی زیادی مصرف کند، عملکرد ضعیفی دارد. رفع مشکلات عملکرد شامل پروفایل کردن برنامه شما یا شناسایی مناطقی است که برنامه شما از منابعی مانند CPU، حافظه، گرافیک، شبکه یا باتری دستگاه استفاده ناکارآمد می کند. این مبحث ابزارها و تکنیکهای Android Studio را برای رفع مشکلات رایج عملکرد توضیح میدهد.
برای یادگیری نحوه اجرای نمایه سازهای مستقل بدون اجرای کل IDE Android Studio (فقط ویندوز یا لینوکس)، به اجرای نمایه ساز مستقل مراجعه کنید.
الزامات
برای نمایه کردن برنامه خود، توصیه می کنیم موارد زیر را داشته باشید:
برنامهای با نسخه ساخت نسخهای که پیکربندی مانیفست
profileable
را فعال کرده است، همچنین به عنوان برنامه نمایهپذیر شناخته میشود. به طور پیشفرض، برنامهها این پیکربندی را روی true تنظیم کردهاند. برای بررسی یا تغییر این پیکربندی، مانیفست برنامه خود یا فایلAndroidManifest.xml
را باز کنید و در بخش<application>
پیکربندی مانیفستprofileable
را جستجو کنید:<profileable android:shell="true" />
یک دستگاه تست مجازی یا فیزیکی که دارای API سطح 29 یا بالاتر است و دارای Google Play است.
پلاگین Android Gradle 7.3 یا بالاتر.
نمایهپذیر در مقابل برنامههای قابل اشکالزدایی
یک برنامه نمایهپذیر به شما امکان میدهد بیشتر کارهای نمایهسازی رایج را انجام دهید، اما اگر نیاز به ضبط تخصیصهای جاوا/کوتلین یا گرفتن یک heap dump دارید، باید به جای آن از یک برنامه قابل اشکالزدایی استفاده کنید. یک فرآیند برنامه قابل اشکالزدایی و دستگاهی که API سطح 26 یا بالاتر را اجرا میکند، همچنین به شما امکان میدهد تا جدول زمانی تعامل را که تعامل کاربر و رویدادهای چرخه عمر برنامه را نشان میدهد، در نماهای وظیفهای که آن را ارائه میدهند، مشاهده کنید.
یک برنامه قابل اشکال زدایی بر اساس نوع ساخت debug
برنامه شما است و به شما امکان می دهد از ابزارهای توسعه مانند دیباگر استفاده کنید. با این حال، با برخی از هزینه های عملکرد همراه است. یک برنامه نمایهپذیر بر اساس release
ساخت برنامه شما است و زیرمجموعهای از کارهای نمایهسازی رایج را بدون هزینه سربار عملکرد ساخت اشکالزدایی فعال میکند.
یک برنامه پروفایل بسازید و اجرا کنید
برای ساخت و اجرای یک برنامه پروفایل در اندروید استودیو، مراحل زیر را دنبال کنید:
- اگر قبلاً ندارید یک پیکربندی run/debug ایجاد کنید .
- نوع ساخت نسخه خود را انتخاب کنید ( Build > Select Build Variant ).
- روی اقدامات بیشتر کلیک کنید > «برنامه» نمایه با سربار کمیا «برنامه» نمایه با اطلاعات کامل ("برنامه" نام پیکربندی اجرا است، بنابراین ممکن است برای شما متفاوت باشد). برای انتخاب بین دو گزینه، به موارد مورد نیاز مراجعه کنید. برنامه در دستگاه آزمایشی شما باز می شود و بخش Profiler در Android Studio باز می شود.
اگر این دستورالعملها برای شما کار نمیکنند، به ساخت و اجرای دستی یک برنامه نمایهپذیر مراجعه کنید.
شروع به نمایه سازی کنید
برای شروع یک کار پروفایل، این مراحل را دنبال کنید:
فرآیندی را از لیست موجود در برگه Home در قسمت Profiler انتخاب کنید. در بیشتر موارد، میخواهید فرآیند برتری را که برنامه شما را نشان میدهد انتخاب کنید.
یک کار پروفایل را از بخش Tasks انتخاب کنید. برای اطلاعات بیشتر در مورد وظایف، به صفحات دیگر در این بخش مراجعه کنید. همه وظایف پروفایل برای هر فرآیندی در دسترس نیستند. اگر نمیدانید از کجا شروع کنید، با بازرسی برنامهتان به صورت زنده، یک نمای کلی از فعالیت عملکردی دریافت کنید.
برای انتخاب اینکه آیا کار پروفایلر از راه اندازی شروع شود یا در حین اجرا به فرآیند متصل شود، از کار Start profiler از کشویی استفاده کنید. اگر میخواهید زمان راهاندازی برنامه خود را بهبود ببخشید یا فرآیندی را که در حین راهاندازی برنامه اتفاق میافتد را ثبت کنید، باید راهاندازی را نیز در نظر بگیرید. در غیر این صورت، می توانید پروفایل را در وضعیت فعلی برنامه خود شروع کنید.
روی Start profiler task کلیک کنید. کار در برگه خودش شروع می شود.
با برنامه خود تعامل داشته باشید تا فعالیت ها فعال شوند.
ضبط را متوقف کنید (در صورت وجود)، صبر کنید تا تجزیه شود و نتایج را ببینید.
مقایسه، صادرات، و ردیابی واردات
هنگامی که یک کار نمایه سازی را متوقف می کنید، به طور خودکار در برگه ضبط های گذشته در قسمت پروفایلر ذخیره می شود. می توانید از این ضبط های ذخیره شده برای مقایسه میزان استفاده از منابع در سناریوهای مختلف استفاده کنید. ضبطها در طول جلسه فعلی Android Studio ذخیره میشوند. اگر میخواهید آنها را برای مدت طولانیتری نگه دارید، با کلیک روی صادرات ضبط ، آنها را صادر کنید . همه انواع ردیابی را نمی توان صادر کرد.
برای وارد کردن یک ردیابی، به عنوان مثال از اجرای قبلی Android Studio، روی Import recording کلیک کنید در برگه ضبط گذشته و فایل ردیابی خود را انتخاب کنید. همچنین می توانید یک فایل را با کشیدن آن به پنجره ویرایشگر Android Studio وارد کنید.
پیکربندی ضبط را ویرایش کنید
برای ویرایش پیکربندی ضبط کار پروفایلر، روی تنظیمات پروفایلر کلیک کنید . دو تنظیم اصلی وجود دارد که می توانید تغییر دهید:
- برای کارهایی که شامل نمونه گیری است، فاصله نمونه نشان دهنده زمان بین هر نمونه است. هر چه فاصله زمانی که مشخص می کنید کمتر باشد، سریعتر به محدودیت اندازه فایل برای داده های ضبط شده می رسید.
- محدودیت اندازه فایل نشان دهنده مقدار داده ای است که می توان روی دستگاه متصل نوشت. وقتی ضبط را متوقف می کنید، Android Studio این داده ها را تجزیه می کند و در پنجره نمایه ساز نمایش می دهد. اگر محدودیت را افزایش دهید و حجم زیادی از داده را ضبط کنید، Android Studio زمان زیادی برای تجزیه فایل طول می کشد و ممکن است پاسخگو نباشد.