Memilih metode pembuatan profil yang tepat

Anda dapat mengumpulkan profil menggunakan dua metode utama: pengumpulan profil manual dan ProfilingManager API.

  • Pengumpulan profil manual melibatkan menjalankan Perfetto secara manual di perangkat lokal Anda untuk merekam profil. Anda dapat melakukannya menggunakan perintah seperti yang dijelaskan dalam Merekam pelacakan sistem dengan Perfetto atau menggunakan kartu Setelan Cepat, seperti yang dijelaskan dalam Merekam menggunakan kartu Setelan Cepat.
  • ProfilingManager memungkinkan aplikasi mengumpulkan profil dalam produksi.

Sebaiknya gunakan ProfilingManager untuk mengumpulkan dan menganalisis data dari banyak pengguna atau untuk melakukan proses debug masalah yang jarang terjadi. Namun, untuk masalah yang lebih mudah direproduksi, pembuatan profil manual mungkin merupakan pilihan yang lebih baik.

Tabel berikut menunjukkan perbedaan antara kedua metode untuk merekam profil:

ProfilingManager Pengumpulan profil manual
Kontrol waktu profil Lainnya Ciutkan
Sumber profil Perangkat lokal dan pengguna publik Hanya perangkat lokal
Output profil Disamarkan Tidak disamarkan
Pembuatan profil berbasis peristiwa Ya Tidak
Kustomisasi profil Ciutkan Lainnya
Skalabilitas Tinggi Rendah

Bagian berikut menjelaskan secara singkat perbedaan antara metode perekaman profil.

Kontrol waktu profil

ProfilingManager API memberikan kontrol yang lebih besar atas kapan aplikasi memulai atau menghentikan profil dibandingkan dengan pembuatan profil manual, yang mungkin sulit untuk menginisialisasi profil waktu. ProfilingManager juga memudahkan pembuatan profil perilaku yang tidak terduga karena Anda dapat mengumpulkan profil meskipun tidak dapat mereproduksi perilaku secara lokal.

Sumber profil

Dengan ProfilingManager, Anda dapat mengumpulkan data dari pengguna publik untuk menemukan dan memperbaiki masalah performa. Sebaliknya, pembuatan profil manual hanya memungkinkan Anda mereproduksi masalah di perangkat Anda sendiri.

Output profil

ProfilingManager dan pengumpulan manual menghasilkan jenis output profil yang berbeda:

  • ProfilingManager menghasilkan pelacakan yang disamarkan. Pelacakan yang disamarkan menampilkan informasi tentang proses aplikasi Anda, tetapi menyembunyikan data dari aplikasi lain di sistem. Karena ProfilingManager mengumpulkan dan menyamarkan sebelum menampilkannya, Anda dapat mengumpulkan pelacakan dari pengguna publik sekaligus melindungi privasi mereka dengan tidak menampilkan data dari aplikasi lain.

  • Pengumpulan profil manual menghasilkan pelacakan yang tidak disamarkan. Saat Anda merekam pelacakan sistem secara manual, output mungkin menyertakan semua proses yang berjalan di sistem. Meskipun pelacakan yang tidak disamarkan ini menawarkan data yang lebih lengkap untuk proses debug, Anda hanya dapat mengaksesnya secara lokal karena masalah privasi.

Pembuatan profil berbasis peristiwa

ProfilingManager juga dapat mengumpulkan profil saat peristiwa tertentu terjadi, seperti error Aplikasi Tidak Merespons (ANR) atau startup aplikasi. ProfilingManager akan menangani memulai dan menghentikan profil untuk pengumpulan berbasis peristiwa.

Kustomisasi profil

Pembuatan profil manual memberikan kustomisasi terbanyak, sedangkan ProfilingManager menawarkan opsi kustomisasi yang lebih sedikit.

Skalabilitas

ProfilingManager adalah cara terbaik untuk melakukan penskalaan pelacakan karena merupakan satu-satunya opsi yang memungkinkan developer aplikasi merekam profil dari pengguna publik. Dengan ProfilingManager, Anda dapat menyiapkan pengumpulan dan analisis pelacakan skala besar. Pembuatan profil manual terbatas untuk penggunaan lokal.