Lompat ke konten Lompat ke sidebar Lompat ke footer

Widget HTML #1

TIPS & TRIK MENINGKATKAN PERFORMA APLIKASI ANDROID

PELAJAR MEDIA - TIPS & TRIK MENINGKATKAN PERFORMA APLIKASI ANDROID

Kinerja aplikasi seluler apa pun sangat penting; jika aplikasi Anda lamban dan tidak responsif, konsumen akan segera mengabaikannya. Keberhasilan aplikasi Anda di pasar akan berbanding lurus dengan kualitas kinerjanya. Pengembang perlu mencurahkan lebih banyak waktu dan upaya untuk meningkatkan kinerja produk mereka.

Dalam posting hari ini, kita akan membahas beberapa metode dan alat terbaik untuk men-debug dan meningkatkan kinerja aplikasi Android Anda.

Posting ini mengasumsikan Anda pernah bekerja dengan Android studio sebelumnya dan terbiasa dengan bahasa pemrograman Kotlin.

- Waktu Peluncuran Aplikasi 

- Alat untuk Pemantauan Kinerja 

- Penggunaan Memori di Android 

- Mode Caching dan Offline

- Petunjuk Bermanfaat lainnya

TIPS & TRIK MENINGKATKAN PERFORMA APLIKASI ANDROID - PELAJAR MEDIA

Ada dua jenis utas yang harus diperhatikan di Android. Menggambar UI dan menangani interaksi pengguna dengan aplikasi adalah tanggung jawab utama utas ini, yang dikenal sebagai urutan-urutan/ utas UI, yang juga dikenal sebagai thread UI. Untuk proses yang berjalan lama, jenis utas kedua adalah utas latar belakang, yang dapat digunakan bersama dengan utas utama.

Utas UI akan selalu menyegarkan antarmuka pengguna Anda setiap 16 md untuk memastikan kinerja tinggi dan pengalaman pengguna yang menyenangkan. Agar Anda tidak melampaui batasan 16 md dan membuat program Anda tampak lamban dan tidak responsif, Anda tidak boleh melakukan operasi yang berjalan lama di utas UI. Sebagai gantinya, lakukan di utas latar belakang.

SDK Android memiliki berbagai opsi untuk operasi yang berjalan lama, termasuk: Dimungkinkan untuk memanfaatkan teknologi ini untuk menangani operasi yang memakan waktu, seperti mengunduh gambar dari server jarak jauh atau membuat panggilan API, mengurai JSON, memasukkan data ke SQLite, dll.

Pemrosesan utas dan latar belakang/paralel harus dikelola dengan baik untuk menyediakan aplikasi yang stabil dan berkinerja tinggi. Ini dapat dicapai sebagian dengan membatasi berapa banyak data yang dikirim melalui jaringan tertentu. Data tekstual harus dimuat terlebih dahulu untuk memaksimalkan kecepatan jaringan. Sebagai opsi kedua, Anda dapat memuat konten berbasis gambar di aplikasi Anda secara sinkron.

Beberapa Poin untuk Dipertimbangkan

Selalu gunakan pustaka yang telah teruji dengan baik yang mengaktifkan metode caching seperti Glide atau Picasso saat bekerja dengan gambar, dan saat berjejaring secara umum, gunakan Retrofit atau pustaka Retrofit.

Jika memungkinkan, simpan data dan sumber daya statis, seperti foto ukuran penuh (yang dapat Anda selesaikan menggunakan Glide) dan simpan selama mungkin alih-alih mengunduh data yang sama berulang kali. Permintaan duplikat menyumbat sistem dan memperlambat aplikasi, terutama jika Anda memiliki banyak orang yang menggunakan sistem.

Misalnya, jika aplikasi Anda memerlukan data di masa mendatang, Anda dapat menggunakan WorkManager Jetpack untuk menyinkronkan dan memuatnya saat pengguna tidak menggunakan aplikasi. Jangan menunggu pengguna membuka aplikasi sebelum Anda memulai pekerjaan yang perlu Anda selesaikan. Untuk mengoptimalkan pemuatan dan penyimpanan data dalam cache, Anda dapat menggunakan WorkManager untuk memberikan kriteria dan batasan, seperti apakah jaringan terhubung atau pengisi daya dicolokkan, dan Anda juga dapat menentukan waktu, seperti tengah malam, untuk tugas tertentu yang akan dilakukan.

Pikirkan tentang bagaimana aplikasi Anda dapat secara dinamis mengubah kualitas konten yang disediakan bergantung pada kualitas jaringan yang tersedia: aplikasi Anda dapat secara dinamis mengubah kualitas konten yang dikirimkan. Menggunakan teknik ini akan membuat aplikasi Anda tampak lebih pintar, dan lebih penting lagi, ini akan menghemat uang Anda untuk biaya data.

Ini adalah solusi ketika jaringan Anda mati atau tidak ada. Itu selalu lebih baik untuk menunjukkan sesuatu daripada tidak menunjukkan apa-apa. Untuk melakukan ini, aplikasi Anda perlu menerapkan beberapa jenis caching, dalam hal ini akan menyimpan data yang diterima dari jaringan (atau sumber lain) pada perangkat dan kemudian menampilkannya.

Jika sebagian besar data yang Anda muat adalah sama setiap kali Anda menjalankan aplikasi, ini mungkin sangat menghemat waktu. Mengurangi beban server berarti masa pakai baterai yang lebih baik untuk ponsel Anda, itulah sebabnya ini adalah pilihan yang baik.

Untuk memeriksa kinerja aplikasi Anda saat tidak terhubung ke internet, alihkan ponsel Anda ke mode pesawat dan amati apa yang terjadi.

Waktu startup aplikasi Anda adalah salah satu hal pertama yang akan diperhatikan pengguna Anda. Untuk meminimalkan ketidakpuasan pelanggan, Anda harus memastikan bahwa perangkat lunak Anda diluncurkan dan dimulai dengan cepat. Ada sejumlah panduan yang harus diikuti untuk mengurangi waktu startup:

  • Jangan menggunakan terlalu banyak tampilan pada layar pertama yang dilihat pengguna.
  • Jangan mengembang elemen UI yang tidak Anda butuhkan.
  • Jangan melakukan decoding konten yang mahal seperti bitmap.
  • Gunakan Firebase Performance Monitoring atau Android Vitals untuk memantau dan meningkatkan waktu mulai aplikasi Anda.

"Jika Anda tidak bisa mengukurnya, Anda tidak bisa memperbaikinya," kata pepatah lama. Kehidupan pribadi dan profesional kita tidak dikecualikan dari pedoman ini. Jika Anda ingin meningkatkan kinerja aplikasi Anda, Anda perlu mengukurnya setiap saat. Berikut adalah beberapa alat yang dapat Anda gunakan untuk melakukan itu.

Respons lambat, animasi tersentak-sentak, pembekuan, atau konsumsi baterai yang berlebihan adalah tanda-tanda bahwa aplikasi memiliki kinerja yang buruk. Untuk memperbaiki masalah kinerja, Anda harus terlebih dahulu mengidentifikasi penggunaan CPU, memori, grafik, jaringan, dan baterai perangkat yang tidak efisien oleh perangkat lunak Anda.

Hal lain yang perlu diingat adalah bahwa tidak semua orang memiliki akses ke lebih dari 2 GB RAM dan CPU yang kuat. Adalah umum bagi pemrogram untuk mengoptimalkan kode mereka untuk platform yang salah. Mereka umumnya memiliki perangkat keras kelas atas yang mereka miliki atau emulasi kelas atas yang berjalan di workstation dengan kemampuan kelas atas. Aturan praktis yang baik adalah memiliki berbagai perangkat untuk menguji aplikasi Anda. Kecepatan prosesor, resolusi, dan kapasitas memori adalah contoh dari variasi semacam ini.

Jadi, mari kita lihat lebih dekat beberapa alat yang mungkin kita gunakan untuk mengawasi kinerja aplikasi kita:

1. Profiler Android

Android Studio menyertakan alat yang disebut Android Profiler. Tab logcat dan terminal terletak di sudut kiri bawah Android Studio. Dengan menggunakan profiler, Anda dapat melihat secara real time berapa banyak CPU, jaringan, baterai, dan memori yang digunakan program Anda.

Gambar 1.2. tab Profiler Android Studio

Profiler CPU: Ini membantu dalam penyelidikan masalah dengan kinerja runtime.

Contoh profil CPU ditunjukkan pada Gambar berikut:

Gambar 1.3. profil CPU

Dengan menggunakan profiler memori, Anda dapat melacak berapa banyak memori yang digunakan dan ke mana perginya. Anda juga dapat menggunakannya untuk memicu Pengumpul Sampah dan melihat secara real-time objek apa yang dialokasikan. Pengumpul sampah (GC) Java bertugas membersihkan memori mesin virtual dengan menghancurkan item apa pun yang tidak lagi diperlukan. Dengan profiler ini, Anda dapat menggunakannya untuk memaksa JVM mengalokasikan objek saat perlu mengosongkan ruang.

Pandangan mendalam ke dalam pola lalu lintas jaringan dapat diperoleh dengan menggunakan profiler jaringan.

Gambar 1.4. Network Profiler

2. Memantau kinerja Firebase

Memantau kinerja aplikasi iOS, Android, atau Web Anda menggunakan Firebase Performance Monitoring adalah layanan gratis. Dengan menggunakan konsol firebase, Anda dapat mengumpulkan metrik kinerja dari aplikasi Anda, mengevaluasinya, dan menganalisis data ini. Kinerja aplikasi Anda dapat dipantau secara real-time, dan Anda akan tahu persis di mana harus memfokuskan upaya Anda.

3. Penting di ponsel dan tablet Android

Untuk meningkatkan stabilitas dan kinerja perangkat Android, Google telah mengembangkan Android vitals, sebuah aplikasi. Perangkat Android pengguna mengumpulkan informasi tentang stabilitas aplikasi, waktu mulai, penggunaan baterai, waktu render, dan penolakan izin saat mereka menggunakan aplikasi Anda. Data kemudian dikompilasi dan ditampilkan di dasbor masing-masing oleh Konsol Google Play.

Ada banyak informasi berguna di dasbor untuk pengembang, seperti kecepatan program membeku, jumlah waktu yang diperlukan untuk memulai, dan banyak lagi. Untuk informasi tambahan tentang /topic/performance/vitals Android, lihat dokumentasi halaman ini.

Penting untuk memahami cara kerja alokasi memori di Android sebelum membahas manajemen memori. Untuk memungkinkan pengguna seluler melakukan banyak tugas, platform Android membatasi jumlah RAM yang dapat dialokasikan untuk masing-masing aplikasi. Pembatasan ini bersifat dinamis dan berubah berdasarkan seberapa banyak data yang digunakan pada perangkat seluler tertentu.

Entah sistem akan menambah ruang yang tersedia atau akan melakukan Acara Pengumpul Sampah untuk mengosongkan sebagian ruang jika penyimpanan yang dialokasikan untuk aplikasi Anda penuh. Mesin Virtual Java akan mengeluarkan Pengecualian OOM jika kedua alternatif ini gagal, jadi Anda harus berhati-hati saat melihat Pengecualian OOM di jejak tumpukan aplikasi Anda.

Sekarang kita telah melihat sedikit tentang bagaimana Android menangani memori untuk program kita, saatnya untuk mengendalikan memori itu sendiri! Kita harus berhati-hati dalam mengalokasikan dan melepaskan RAM untuk aplikasi kita. Kebocoran memori adalah masalah paling umum yang gagal diatasi oleh sebagian besar programmer.

Kebocoran memori terjadi ketika pengumpul sampah tidak dapat mengumpulkan dan membersihkan item yang tidak berguna dari memori, menyebabkan memori menjadi terlalu terbebani. Objek yang tidak digunakan masih direferensikan dalam situasi ini. Misalkan kita memiliki Aktivitas yang tidak digunakan dalam kode kita, dan kita memiliki semua tata letak, tampilan, dan semua hal lain yang ditawarkan Aktivitas sebagai hasilnya.

Berikut adalah beberapa rekomendasi tentang cara mencegah dan memperbaiki kebocoran memori:.

  • Setelah aplikasi Anda selesai menggunakan event atau handler, batalkan pendaftarannya atau tunggu metode on destroy, yang merupakan panggilan terakhir yang Anda dapatkan sebelum aktivitas atau komponen Anda dihapus.
  • Mencegah pembuatan kelas yang menyertakan Objek Konteks (CO). Beberapa pengembang lebih memilih untuk menyimpan konteks dalam variabel pribadi daripada meneruskannya dari aktivitas ke kelas. Jika ini terjadi, kami telah menemukan kebocoran memori. Selamat!
  • Kebocoran aplikasi Anda dapat ditemukan menggunakan profiler Android atau LeakCanary.
  • Jika Anda menggunakan referensi statis untuk aktivitas atau fragmen, pengumpul sampah tidak akan dapat mengumpulkannya karena mereka memiliki siklus hidup.
  • Agar Anda tidak membuang waktu atau sumber daya, pastikan Anda mengetahui dan memahami arsitektur Anda secara efektif.
  • Anda mungkin tidak melihat kebocoran memori jika rekan Anda menunjukkannya selama tinjauan kode atau pemrograman pasangan.

Ada beberapa hal lagi yang perlu diingat saat mencoba meningkatkan kecepatan aplikasi Android Anda daripada saran yang diberikan di sini.

  • Pengelola API ini mungkin telah merilis versi baru yang berperforma lebih baik daripada yang tidak digunakan lagi, atau penghentian mungkin karena masalah yang tidak Anda sadari.
  • Cobalah untuk menjaga ukuran aplikasi Anda seminimal mungkin.
  • Gunakan format Android App Bundle (.aab) baru, bukan yang lama (APK)
  • Anda harus selalu menggunakan versi terbaru dari semua pustaka dan dependensi yang sedang Anda kerjakan. Lebih baru biasanya lebih disukai.)
  • Kurangi jumlah perpustakaan eksternal yang perlu Anda manfaatkan.

Artikel ini membahas dan mendetail cara meningkatkan kinerja aplikasi Android. Akibatnya, jumlah penggunaan CPU dan memori dapat sangat dikurangi dengan menggabungkan teknologi ini.

Manfaatkan praktik yang direkomendasikan ini saat mengerjakan layanan pengembangan aplikasi seluler Anda. Mencapai retensi dan akuisisi pengguna sangat penting untuk benchmarking dan pemecahan aplikasi, dan ini mungkin rahasia untuk melakukannya.


Posting Komentar untuk "TIPS & TRIK MENINGKATKAN PERFORMA APLIKASI ANDROID"