Cara yang berguna untuk mengevaluasi keunggulan aplikasi adalah dengan mengikuti alur kerja di aplikasi Anda dan mengevaluasi kelancaran serta keamanan pengalaman aplikasi.
Checklist ini menentukan kumpulan kriteria kualitas inti dan pengujian teratribusi untuk membantu Anda menilai kualitas aplikasi. Beberapa kriteria ini mungkin mudah terlewatkan, dan pengujian akan membantu Anda mengingat untuk menyertakannya dalam rencana pengujian.
Checklist menyoroti kualitas minimum yang harus dipenuhi oleh semua aplikasi. Pengujian Anda kemungkinan akan jauh lebih baik daripada yang dijelaskan di sini.
Setiap item dalam checklist kualitas memiliki ID unik yang mungkin membantu untuk digunakan saat Anda berkomunikasi dengan tim. Anda juga dapat melihat panduan versi sebelumnya.
Pengalaman visual
Aplikasi Anda harus memberikan pola interaksi dan desain visual Android standar yang sesuai untuk pengalaman pengguna yang konsisten dan intuitif.
Area | ID | Pengujian | Deskripsi |
---|---|---|---|
Navigasi | VX-N1 | CR-3 | Aplikasi ini mendukung navigasi Tombol kembali standar dan tidak menggunakan perintah khusus "Tombol kembali" di layar. |
VX-N2 | CR-3 | Aplikasi ini mendukung navigasi gestur untuk kembali/beralih ke layar utama. | |
VX-N3 | CR-1 CR-3 CR-5 |
Aplikasi mempertahankan dan memulihkan status pengguna atau aplikasi dengan benar. Aplikasi mempertahankan status pengguna atau aplikasi saat meninggalkan latar depan dan mencegah kehilangan data secara tidak sengaja akibat navigasi mundur dan perubahan status lainnya. Saat kembali ke latar depan, aplikasi harus memulihkan status yang dipertahankan dan transaksi stateful signifikan yang tertunda. Contohnya meliputi: perubahan pada kolom yang dapat diedit, progres game, menu, video, dan bagian lain di aplikasi atau game.
|
|
Notifikasi | VX-S1 | CR-9 | Notifikasi mengikuti panduan desain. Khususnya:
|
VX-S2 | CR-9 | Untuk aplikasi pesan, aplikasi sosial, dan percakapan:
| |
UI dan Grafis | VX-U1 | CR-5 | Aplikasi ini mendukung orientasi lanskap dan potret, serta status perangkat terlipat dan terbentang. Orientasi dan status lipat mengekspos fitur dan tindakan yang pada dasarnya sama serta mempertahankan paritas fungsional. |
VX-U2 | CR-5 | Aplikasi mengisi jendela aplikasi pada kedua orientasi dan tidak memiliki tampilan lebar karena perubahan konfigurasi, termasuk perangkat dilipat dan dibentangkan. Tampilan lebar kecil untuk menggantikan variasi kecil di geometri layar diperbolehkan. |
|
VX-U3 | CR-5 | Aplikasi menangani transisi cepat dengan benar antara orientasi tampilan dan tindakan melipat dan membentangkan perangkat tanpa masalah rendering tampilan dan tanpa kehilangan status. | |
Kualitas visual | VX-V1 | CR-semua | Aplikasi menampilkan grafis, teks, gambar, dan elemen UI lainnya tanpa pikselasi, blur, atau distorsi yang kentara.
|
VX-V2 | CR-semua | Aplikasi menampilkan teks dan blok teks dengan cara yang dapat diterima untuk setiap bahasa yang didukung aplikasi.
|
|
VX-V3 | CR-semua | Konten aplikasi, dan semua konten web yang dirujuk oleh aplikasi, mendukung tema gelap. | |
Aksesibilitas | VX-A1 | CR-semua | Target sentuh harus berukuran minimal 48 dp. Pelajari lebih lanjut. |
VX-A2 | CR-semua | Konten teks dan latar depan aplikasi harus mempertahankan rasio kontras warna yang cukup tinggi dengan latar belakangnya:
Pelajari warna dan kontras lebih lanjut. |
|
VX-A3 | CR-semua | Deskripsikan setiap elemen UI,
kecuali TextView , menggunakan contentDescription . |
Fungsi
Aplikasi Anda harus mengimplementasikan perilaku fungsional yang diharapkan.
Area | ID | Pengujian | Deskripsi |
---|---|---|---|
Audio | FN-A1 | CR-1 CR-8 |
Audio dilanjutkan saat aplikasi kembali ke latar depan, atau menunjukkan kepada pengguna bahwa pemutaran sedang dijeda. |
FN-A2 | CR-1 CR-2 CR-8 |
Jika pemutaran audio adalah fitur inti, aplikasi harus mendukung pemutaran di latar belakang. | |
FN-A3 | CR-0 | Saat pengguna memulai pemutaran audio, aplikasi harus melakukan salah satu tindakan berikut dalam satu detik:
|
|
FN-A4 | CR-0 | Aplikasi harus meminta fokus audio saat audio mulai diputar dan mengabaikannya saat pemutaran berhenti. | |
FN-A5 | CR-0 | Aplikasi harus menangani permintaan aplikasi lain untuk fokus audio. Misalnya, aplikasi dapat mengurangi volume pemutaran saat aplikasi lain memutar ucapan. | |
Media | FN-M1 | CR-0 CR-6 CR-8 |
Jika memutar audio di latar belakang, aplikasi harus membuat Notifikasi yang dibuat dengan gaya MediaStyle. |
FN-M2 | CR-0 | Jika memutar video, aplikasi harus mendukung pemutaran picture-in-picture. | |
FN-M3 | CR-0 | Jika mengenkode video, aplikasi harus melakukannya menggunakan standar kompresi video HEVC. | |
Berbagi | FN-S1 | CR-0 | Aplikasi harus menggunakan Android Sharesheet saat berbagi konten. Fitur ini dapat menyarankan target yang tidak tersedia untuk solusi khusus. |
Layanan Latar Belakang | FN-B1 | CR-6 | Aplikasi menghindari menjalankan layanan berdurasi panjang dan tidak perlu di latar belakang. Untuk memastikan perangkat pengguna berjalan dengan lancar, sistem menerapkan berbagai batasan pada layanan latar belakang. Tindakan berikut tidak dianggap sebagai penggunaan layanan latar belakang yang baik:
Pelajari cara memilih solusi yang tepat untuk pekerjaan Anda. |
Performa dan stabilitas
Aplikasi Anda harus memberikan performa, stabilitas, kompatibilitas, dan responsivitas yang diharapkan oleh pengguna.
Area | ID | Pengujian | Deskripsi |
---|---|---|---|
Stabilitas | PS-S1 | CR-semua SD-1 |
Aplikasi tidak mengalami error atau memblokir UI thread yang menyebabkan error ANR (Android Not Responding”). Manfaatkan laporan pra-peluncuran Google Play untuk mengidentifikasi potensi masalah stabilitas. Setelah deployment, perhatikan halaman Android Vitals di Konsol Google Play. |
Performa | PS-P1 | CR-semua SD-1 |
Aplikasi dimuat dengan cepat atau memberikan masukan di layar kepada pengguna (indikator progres atau tanda serupa) jika aplikasi perlu waktu lebih dari dua detik untuk dimuat. |
PS-P2 | CR-semua SD-1 |
Aplikasi harus merender frame setiap 16 md untuk mencapai 60 frame per detik. Developer dapat menggunakan opsi Rendering HWUI profil dalam pengujian. Jika ada masalah, alat tersedia untuk membantu mendiagnosis rendering lambat. | |
PS-P3 | PM-1 | Dengan StrictMode diaktifkan (lihat Pengujian StrictMode di bawah), tidak ada kedipan merah (peringatan performa dari StrictMode) yang terlihat saat menguji aplikasi. Kedipan merah apa pun menunjukkan perilaku buruk terkait penyimpanan, akses jaringan, atau kebocoran memori. | |
SDK | PS-T1 | CR-0 | Aplikasi ini berjalan pada platform Android versi publik terbaru tanpa mengalami error atau memberikan pengaruh besar terhadap fungsionalitas inti. |
PS-T2 | SP-1 | Aplikasi menargetkan Android SDK terbaru yang diperlukan untuk menyesuaikan dengan persyaratan Google Play dengan menetapkan nilai targetSdk . |
|
PS-T3 | SP-1 | Aplikasi ini di-build menggunakan Android SDK terbaru dengan menetapkan nilai compileSdk . |
|
PS-T4 | SP-2 SP-3 |
Setiap SDK Google atau pihak ketiga yang digunakan adalah yang terbaru. Peningkatan apa pun pada SDK ini, seperti stabilitas, kompatibilitas, atau keamanan, harus tersedia bagi pengguna secara tepat waktu.
Untuk SDK Google, sebaiknya gunakan SDK yang didukung oleh layanan Google Play, jika tersedia. SDK ini kompatibel dengan versi sebelumnya, menerima update otomatis, mengurangi ukuran paket aplikasi Anda, dan menggunakan resource di perangkat dengan efisien. Developer bertanggung jawab atas seluruh codebase aplikasi, termasuk SDK pihak ketiga yang digunakan. |
|
PS-T5 | SP-3 | Aplikasi ini tidak menggunakan antarmuka non-SDK. | |
PS-T6 | SP-2 | Tidak ada library debug yang disertakan dalam aplikasi produksi. Hal ini dapat menyebabkan masalah performa dan keamanan. | |
Baterai | PS-B1 | BA-1 | Aplikasi ini mendukung fitur pengelolaan daya dengan benar yang diperkenalkan di Android 6.0 (Istirahatkan dan Aplikasi Standby). Jika fungsionalitas inti terganggu oleh pengelolaan daya, hanya aplikasi yang memenuhi syarat yang dapat meminta pengecualian. Lihat Dukungan untuk kasus penggunaan lainnya dalam Istirahatkan dan Aplikasi Standby.
Selama pengembangan, developer dapat menguji perilaku aplikasi standby dan istirahatkan menggunakan perintah ADB ini. Dalam hal penggunaan baterai, developer dapat menggunakan Energy Profiler Android Studio atau alat Battery Historian, yang dikombinasikan dengan pekerjaan latar belakang yang direncanakan, untuk mendiagnosis penggunaan baterai yang tidak terduga. |
Privasi & keamanan
Aplikasi Anda harus menangani data pengguna dan informasi pribadi dengan aman pada tingkat izin yang sesuai.
Selain checklist ini, aplikasi yang dipublikasikan di Google Play Store juga harus mematuhi kebijakan Data Pengguna untuk melindungi privasi pengguna.
Area | ID | Pengujian | Deskripsi |
---|---|---|---|
Izin | SC-P1 | SC-4 | Aplikasi hanya meminta jumlah izin minimum absolut yang diperlukan untuk mendukung kasus penggunaannya. Untuk izin tertentu seperti lokasi, gunakan lokasi sementara sebagai pengganti lokasi terperinci jika memungkinkan. |
SC-P2 |
Aplikasi meminta izin untuk mengakses data sensitif (seperti SMS, Log Panggilan, atau Lokasi) atau layanan berbayar (seperti Telepon atau SMS) hanya jika terkait langsung dengan kasus penggunaan inti aplikasi. Implikasi yang terkait dengan izin ini harus diungkap secara jelas kepada pengguna. Bergantung pada cara Anda menggunakan izin, mungkin ada cara alternatif untuk memenuhi kasus penggunaan aplikasi Anda tanpa mengandalkan akses ke informasi sensitif. Misalnya, daripada meminta izin terkait kontak pengguna, mungkin lebih tepat untuk meminta akses dengan menggunakan intent implisit. |
||
SC-P3 | CR-0 | Aplikasi meminta izin runtime dalam konteks, saat fungsionalitas diminta, bukan di awal selama pengaktifan aplikasi. | |
SC-P4 | CR-0 | Aplikasi ini menyampaikan dengan jelas alasan izin tertentu diperlukan atau mengikuti alur yang direkomendasikan untuk menjelaskan mengapa aplikasi memerlukan izin. |
|
SC-P5 | CR-0 | Aplikasi harus melakukan degradasi halus saat pengguna menolak atau mencabut izin. Aplikasi tidak boleh mencegah pengguna mengakses aplikasi sekaligus. | |
Data & File | SC-DF1 | SC-1 | Semua data sensitif disimpan di penyimpanan internal aplikasi. |
SC-DF2 | SC-10 | Tidak ada data pengguna pribadi atau sensitif yang dicatat ke log sistem atau log khusus aplikasi. | |
SC-DF3 | Aplikasi tidak boleh menggunakan ID hardware apa pun yang tidak dapat direset, seperti IMEI, untuk tujuan identifikasi. | ||
Identitas | SC-ID1 | CR-0 | Aplikasi ini memberikan petunjuk untuk mengisi otomatis kredensial akun dan informasi sensitif lainnya, seperti info kartu kredit, alamat fisik, dan nomor telepon. |
SC-ID2 | CR-0 | Integrasikan Pengelola Kredensial untuk Android guna mendapatkan pengalaman login yang lancar yang menggabungkan dukungan untuk kunci sandi, identitas gabungan, dan sandi tradisional. | |
SC-ID3 | CR-0 | Aplikasi mendukung autentikasi biometrik untuk melindungi transaksi keuangan atau informasi sensitif, seperti dokumen pengguna yang penting. | |
Komponen Aplikasi | SC-AC1 | SC-5 |
Aplikasi menetapkan atribut Hanya komponen aplikasi yang berbagi data dengan aplikasi lain, atau komponen yang harus dipanggil oleh aplikasi lain, yang akan diekspor. |
SC-AC2 | CR-0 SC-4 |
Semua intent dan siaran mengikuti praktik terbaik:
|
|
SC-AC3 | SC-3 | Semua komponen yang membagikan konten antar-aplikasi Anda menggunakan android:protectionLevel="signature" untuk izin khusus. Ini termasuk aktivitas, layanan, penerima siaran, dan khususnya penyedia konten.
Aplikasi tidak boleh mengandalkan akses ke daftar paket yang diinstal. Akses telah dibatasi mulai di Android 11. |
|
Jaringan | SC-N1 | SC-9 | Semua traffic jaringan dikirim melalui SSL. |
SC-N2 | SC-6 | Aplikasi mendeklarasikan konfigurasi keamanan jaringan. | |
SC-N3 | Jika aplikasi menggunakan layanan Google Play, penyedia keamanan akan diinisialisasi pada pengaktifan aplikasi. | ||
WebView | SC-W1 | SC-6 | Jangan gunakan setAllowUniversalAccessFromFileURLs() untuk mengakses konten lokal. Sebagai gantinya, gunakan WebViewAssetLoader. |
SC-W2 | SC-7 | WebView tidak boleh menggunakan addJavaScriptInterface() dengan konten yang tidak dipercaya.
Pada Android 6.0 dan yang lebih baru, gunakan saluran pesan HTML. |
|
Eksekusi | SC-E1 | Aplikasi tidak secara dinamis memuat kode dari luar APK aplikasi. Developer harus menggunakan Android App Bundle, yang mencakup Play Feature Delivery dan Play Asset Delivery.
Mulai Agustus 2021, penggunaan Android App Bundle diwajibkan untuk semua aplikasi baru di Google Play Store. |
|
Kriptografi | SC-C1 | Aplikasi ini menggunakan algoritme kriptografi kuat yang disediakan platform dan generator angka acak. Selain itu, aplikasi tidak menerapkan algoritme khusus. |
Google Play
Pastikan aplikasi Anda dapat dipublikasikan di Google Play.
Area | ID | Pengujian | Deskripsi |
---|---|---|---|
Kebijakan | GP-P1 | GP-semua | Aplikasi secara ketat mematuhi ketentuan Kebijakan Konten Developer Google Play dan tidak menawarkan konten yang tidak pantas, tidak menggunakan kekayaan intelektual atau merek orang lain, dan sebagainya. |
GP-P2 | GP-1 | Tingkat kedewasaan di aplikasi disetel dengan tepat berdasarkan Pedoman Rating Konten. | |
Halaman Detail Aplikasi | GP-D1 | GP-1 GP-2 |
Gambar fitur aplikasi mengikuti panduan yang diuraikan dalam artikel dukungan ini. Pastikan:
|
GP-D2 | GP-1 | Video dan screenshot aplikasi tidak menampilkan atau mengacu ke perangkat non-Android. | |
GP-D3 | GP-1 | Video atau screenshot aplikasi tidak mencerminkan konten dan pengalaman penggunaan aplikasi Anda dengan cara yang keliru. | |
Dukungan Pengguna | GP-X1 | GP-1 | Bug umum yang dilaporkan pengguna dalam tab Ulasan pada halaman Google Play dapat diatasi jika bug tersebut berulang dan terjadi di banyak perangkat berbeda. Jika bug terjadi di beberapa perangkat saja, Anda tetap harus mengatasinya jika perangkat tersebut sangat populer atau baru. |
Menyiapkan lingkungan pengujian
Untuk menyiapkan lingkungan pengujian checklist ini, kami merekomendasikan hal berikut:
- Fokus pada pengujian emulator - Android Emulator adalah cara yang sangat bagus untuk menguji aplikasi Anda pada berbagai resolusi layar dan versi Android. Anda harus menyiapkan perangkat yang diemulasi (AVD) untuk mewakili kombinasi faktor-bentuk dan hardware/software paling umum pada basis pengguna target Anda. Selain menguji ponsel, sebaiknya Anda juga menguji faktor bentuk lainnya menggunakan setidaknya emulator berikut:
- Perangkat foldable - Lipat 7,6 inci dengan layar luar (ini tercantum di bawah ponsel di AVD Manager).
- Tablet - Pixel C 9,94 inci (2.560 x 1.800 piksel).
- Untuk pengujian notifikasi aplikasi seluler, sambungkan perangkat seluler/emulator dengan emulator Wear OS - Wear OS Round 1,84 inci.
- Perangkat hardware - Lingkungan pengujian Anda harus menyertakan sejumlah kecil perangkat hardware sebenarnya yang mewakili kombinasi hardware/software dan faktor bentuk utama yang saat ini tersedia bagi konsumen. Anda tidak perlu melakukan pengujian pada setiap perangkat yang ada di pasar, melainkan harus fokus pada sejumlah kecil perangkat yang mewakilinya meskipun menggunakan satu atau dua perangkat untuk setiap faktor bentuk.
- Lab pengujian perangkat - Anda juga dapat menggunakan layanan pihak ketiga, seperti Firebase Test Lab, untuk menguji aplikasi pada berbagai perangkat.
- Menguji dengan versi Android terbaru - Selain menguji versi Android representatif untuk basis pengguna target, Anda harus selalu mengujinya dengan versi Android terbaru (saat ini Android 14). Hal ini memastikan bahwa perubahan perilaku terbaru tidak berdampak negatif terhadap pengalaman pengguna Anda.
Untuk panduan yang lebih komprehensif tentang pengujian termasuk pengujian unit, pengujian integrasi, dan pengujian UI, lihat dasar-dasar pengujian Android.
Prosedur pengujian
Prosedur pengujian ini akan membantu Anda menemukan berbagai jenis masalah kualitas di aplikasi. Anda dapat menggabungkan pengujian atau mengintegrasikan grup pengujian bersama-sama dalam rencana pengujian Anda sendiri. Lihat bagian di atas untuk referensi yang mengatribusikan kriteria dengan prosedur pengujian ini.
Jenis | Pengujian | Deskripsi |
---|---|---|
Rangkaian Inti | CR-0 | Buka semua bagian aplikasi—semua layar, dialog, setelan, dan alur penggunaan.
|
CR-1 | Dari setiap layar aplikasi, tekan tombol Beranda perangkat atau geser ke atas di navigasi gestur, lalu luncurkan kembali aplikasi dari layar Semua Aplikasi. | |
CR-2 | Dari setiap layar aplikasi, beralihlah ke aplikasi lain yang sedang berjalan, lalu kembali ke aplikasi yang sedang diuji menggunakan pengalih aplikasi Terbaru. | |
CR-3 | Dari setiap layar aplikasi (dan dialog), tekan tombol Kembali atau gunakan gestur geser ke belakang. | |
CR-5 | Dari setiap layar aplikasi, putar perangkat antara orientasi lanskap dan potret, serta status terlipat dan terbentang minimal tiga kali. | |
CR-6 | Beralihlah ke aplikasi lain untuk mengirimkan aplikasi pengujian ke latar belakang. Buka Setelan, lalu periksa apakah aplikasi pengujian masih memiliki layanan yang sedang berjalan saat di latar belakang. Di Android 4.0 dan yang lebih baru, buka layar Aplikasi, lalu temukan aplikasi tersebut di tab "Berjalan". | |
CR-7 | Tekan tombol daya untuk mengalihkan perangkat ke mode tidur, lalu tekan lagi tombol daya untuk mengaktifkan layar. | |
CR-8 | Siapkan kunci layar di perangkat. Tekan tombol daya untuk mengalihkan perangkat ke mode tidur (yang mengunci perangkat). Lalu, tekan lagi tombol daya untuk mengaktifkan layar dan membuka kunci perangkat. | |
CR-9 | Picu dan amati semua jenis notifikasi yang dapat ditampilkan aplikasi di panel samping notifikasi. Perluas notifikasi jika ada (Android 4.1 dan yang lebih baru), lalu ketuk semua tindakan yang tersedia. | |
CR-10 | Tinjau Dukungan untuk kasus penggunaan lainnya dalam Istirahatkan dan Aplikasi Standby. | |
Menginstal di Kartu SD | SD-1 | Ulangi Rangkaian Inti dengan aplikasi yang diinstal ke kartu SD perangkat (jika aplikasi mendukung metode penginstalan ini).
Untuk memindahkan aplikasi ke kartu SD, Anda dapat menggunakan Setelan > Info Aplikasi > Pindahkan ke Kartu SD. |
Performa dan Stabilitas | SP-1 | Tinjau file manifes Android dan konfigurasi build untuk memastikan bahwa aplikasi dibuat menggunakan SDK terbaru yang tersedia (targetSdk dan compileSdk ).
|
SP-2 | Tinjau file build.gradle untuk mengetahui dependensi apa pun yang sudah tidak berlaku. |
|
SP-3 | Gunakan alat lint Android Studio untuk mendeteksi penggunaan antarmuka non-SDK. Metode pengujian alternatif lainnya juga ada. | |
Pemantauan Performa | PM-1 | Ulangi Rangkaian Inti dengan profil StrictMode diaktifkan.
Perhatikan pembersihan sampah memori dan dampaknya terhadap pengalaman pengguna dengan cermat. |
Baterai | BA-1 | Ulangi Rangkaian Inti di siklus Istirahatkan dan Aplikasi Standby.
Perhatikan alarm, timer, notifikasi, sinkronisasi, dan sebagainya dengan cermat. Untuk persyaratan dan panduan, lihat Menguji dengan Fitur Istirahatkan dan Aplikasi Standby. |
Keamanan | SC-1 | Tinjau semua data yang disimpan dalam penyimpanan eksternal. |
SC-2 | Tinjau cara data yang dimuat dari penyimpanan eksternal ditangani dan diproses. | |
SC-3 | Tinjau semua penyedia konten yang ditentukan dalam file manifes Android. Pastikan setiap penyedia memiliki protectionLevel yang sesuai.
|
|
SC-4 | Tinjau semua izin yang diperlukan aplikasi Anda, dalam file manifes, saat runtime, dan di layar setelan aplikasi (Setelan > Info Aplikasi) di perangkat. | |
SC-5 | Tinjau semua komponen aplikasi yang ditentukan dalam file manifes Android untuk status ekspor yang sesuai. Properti yang diekspor harus ditetapkan secara eksplisit untuk semua komponen. | |
SC-6 | Tinjau konfigurasi Keamanan Jaringan aplikasi, yang memastikan bahwa tidak ada pemeriksaan lint saat terjadi kegagalan konfigurasi. | |
SC-7 | Untuk setiap WebView, buka halaman yang memerlukan JavaScript. | |
SC-8 | Di setiap WebView, coba buka situs dan konten yang tidak dimuat langsung oleh aplikasi Anda. | |
SC-9 | Deklarasikan Konfigurasi Keamanan Jaringan yang menonaktifkan traffic cleartext, lalu uji aplikasi. | |
SC-10 | Jalankan aplikasi dan terapkan semua fungsionalitas inti, sambil mengamati log perangkat. Tidak ada informasi pengguna pribadi yang harus dicatat. | |
Google Play | GP-1 | Login ke Konsol Google Play untuk meninjau profil developer, deskripsi aplikasi, screenshot, gambar fitur, rating konten, dan masukan pengguna Anda. |
GP-2 | Download gambar fitur dan screenshot, lalu perkecil skalanya agar sesuai dengan ukuran layar perangkat dan faktor bentuk yang Anda targetkan. | |
GP-3 | Tinjau semua aset visual, media, teks, library kode, dan konten lainnya yang dipaketkan dalam download aplikasi atau file ekspansi. |
Pengujian dengan StrictMode
Untuk pengujian performa, sebaiknya aktifkan StrictMode
di aplikasi
Anda dan gunakan kode tersebut untuk menangkap operasi yang dapat memengaruhi performa, akses jaringan,
pembacaan/penulisan file, dan sebagainya. Cari operasi yang berpotensi bermasalah, baik di thread utama maupun di
thread lain.
Anda dapat menyiapkan kebijakan pemantauan per thread menggunakan
StrictMode.ThreadPolicy.Builder
dan mengaktifkan semua pemantauan yang didukung di
ThreadPolicy
menggunakan
detectAll()
.
Pastikan untuk mengaktifkan notifikasi visual pelanggaran kebijakan untuk
ThreadPolicy
menggunakan
penaltyFlashScreen()
.