Membuat profil performa aplikasi

Tetap teratur dengan koleksi Simpan dan kategorikan konten berdasarkan preferensi Anda.

Aplikasi dianggap memiliki performa buruk jika merespons dengan lambat, menampilkan animasi yang putus-putus, berhenti berfungsi, atau menggunakan terlalu banyak daya. Memperbaiki masalah performa melibatkan identifikasi area tempat aplikasi Anda menggunakan resource seperti CPU, memori, grafis, jaringan, atau daya baterai perangkat secara tidak efisien.

Untuk menemukan dan memperbaiki masalah ini, gunakan alat dan teknik pembuatan profil serta benchmarking yang dijelaskan dalam topik ini. Untuk mempelajari teknik mengukur performa dan contoh cara menggunakan teknik ini untuk menyelesaikan masalah tertentu, lihat Mengukur performa.

Android Studio menawarkan beberapa alat pembuatan profil untuk membantu menemukan dan memvisualisasikan potensi masalah:

  • CPU profiler membantu melacak masalah performa runtime.
  • Memory profiler membantu melacak alokasi memori.
  • Network profiler memantau penggunaan traffic jaringan.
  • Energy profiler melacak penggunaan energi, yang dapat berkontribusi pada penggunaan daya baterai.

Untuk informasi selengkapnya tentang alat ini, lihat halaman Profiler Android Studio.

Library Benchmark Jetpack memungkinkan aplikasi Anda mengukur berbagai operasi penting:

  • Macrobenchmark: Mengukur kasus penggunaan performa yang penting, termasuk startup dan menggambar ulang aplikasi yang dipicu oleh tindakan seperti animasi UI atau scrolling.
  • Microbenchmark: Mengukur biaya CPU untuk fungsi tertentu.

Untuk mempelajari library ini lebih lanjut, lihat halaman Benchmark aplikasi Anda.

Aplikasi yang dapat dibuat profil

Profileable adalah konfigurasi manifes yang diperkenalkan di Android Q. Atribut ini dapat menentukan apakah pengguna perangkat dapat membuat profil aplikasi ini melalui alat seperti Android Studio, Simpleperf, dan Perfetto.

Sebelum profileable, sebagian besar developer hanya dapat membuat profil aplikasi yang dapat di-debug di Android, yang menambahkan biaya performa yang signifikan sebagai efek samping. Biaya performa ini dapat membatalkan hasil pembuatan profil, terutama jika terkait dengan waktu. Tabel 1 merangkum perbedaan antara aplikasi yang dapat di-debug dan yang dapat dibuat profil.

Tabel 1. Ringkasan perbedaan utama antara aplikasi yang dapat di-debug dan yang dapat dibuat profil.
Fitur Dapat di-debug Dapat dibuat profil
Memory Profiler Penuh

Ya:

Tidak:

CPU Profiler Penuh

Ya:

Tidak:

Network Profiler Ya Tidak
Energy Profiler Ya Tidak
Pemantauan Acara Ya Tidak

Profileable telah diperkenalkan sehingga developer dapat memilih untuk mengizinkan aplikasi mereka mengekspos informasi ke alat pembuatan profil, sekaligus menimbulkan sedikit biaya performa. APK yang dapat dibuat profil pada dasarnya adalah APK rilis dengan baris <profileable android:shell="true"/> yang ditambahkan ke file manifes.

Untuk mem-build aplikasi yang dapat dibuat profil, Anda harus mem-build aplikasi rilis terlebih dahulu, lalu mengupdate file manifesnya, yang mengubah aplikasi rilis menjadi aplikasi yang dapat dibuat profil.

Mem-build aplikasi rilis

Untuk mem-build aplikasi rilis bagi tujuan pembuatan profil, lakukan hal berikut:

  1. Tandatangani aplikasi Anda menggunakan kunci debug dengan menambahkan baris berikut ke file build.gradle aplikasi Anda. Jika sudah memiliki varian build rilis yang berfungsi, Anda dapat melanjutkan ke langkah berikutnya.

            buildTypes {
              release {
                signingConfig signingConfigs.debug
              }
            }
          
  2. Di Android Studio, pilih Build > Select Build Variant... dan pilih varian rilis.

Mengubah rilis ke yang dapat dibuat profil

  1. Konversikan aplikasi rilis dari atas menjadi aplikasi yang dapat dibuat profil dengan membuka file AndroidManifest.xml dan menambahkan berikut ini. Untuk detail selengkapnya, lihat Mem-build aplikasi untuk dirilis.

    <profileable android:shell="true"/>

  2. Bergantung pada versi SDK, Anda mungkin perlu menambahkan baris berikut ke file build.gradle aplikasi.

          aaptOptions {
            additionalParameters =["--warn-manifest-validation"]
          }
        

Membuat profil aplikasi yang dapat dibuat profil

Untuk membuat profil aplikasi yang dapat dibuat profil, lakukan hal berikut:

  1. Dari emulator atau perangkat pengembangan, mulai aplikasi.

  2. Di Android Studio, luncurkan profiler dengan memilih View > Tool Windows > Profiler.

  3. Setelah aplikasi diluncurkan, klik tombol Tombol plus profiler di profiler untuk melihat menu dropdown. Pilih perangkat, lalu pilih entri aplikasi di bagian Other profileable processes.

    Menu yang dapat dibuat profil
  4. Profiler harus dilampirkan ke aplikasi. Hanya CPU dan Memory Profiler yang tersedia, dengan kemampuan terbatas untuk Memory Profiler.

    Tampilan sesi yang dapat dibuat profil
    Menu yang dapat dibuat profil
    Menu yang dapat dibuat profil

Catatan: Saat membuat profil aplikasi, Anda harus menonaktifkan Instant Run. Ada dampak performa yang kecil ketika menggunakan Instant Run dan dampak yang sedikit lebih besar saat mengupdate metode. Dampak terhadap performa ini dapat mengganggu informasi yang diberikan oleh alat pembuatan profil performa. Selain itu, metode stub yang dihasilkan ketika menggunakan fitur tersebut dapat mempersulit pelacakan tumpukan.