Latar belakang
Cat Daddy Games adalah studio 2K yang dimiliki sepenuhnya dan berlokasi di Kirkland, Washington, dan developer NBA 2K Mobile. Tim ingin meningkatkan kualitas dan stabilitas game secara keseluruhan, terutama dengan mengurangi error "Aplikasi Tidak Merespons" (ANR). ANR terjadi saat UI thread aplikasi Android diblokir terlalu lama. Jika hal itu terjadi, thread utama aplikasi, yang bertanggung jawab untuk mengupdate UI, tidak dapat menggambar atau memproses peristiwa input pengguna, sehingga dapat membuat pengguna merasa frustrasi. Jika aplikasi berjalan di latar depan, sistem akan menampilkan dialog yang memungkinkan pengguna menutup aplikasi secara paksa.
Yang mereka lakukan
Mengurangi ANR menjadi prioritas tinggi bagi Cat Daddy. Tim UM (Uji Mutu) bekerja tanpa henti dan berhasil menemukan pola ANR umum: mereka menemukan bahwa saat aplikasi dijeda lalu segera dilanjutkan, sejumlah besar input sentuh dapat menyebabkan ANR. Investigasi lebih lanjut dengan Firebase Crashlytics menunjukkan bahwa ANR ini adalah jenis android.os.MessageQueue.nativePollplatz, jenis ANR yang paling umum untuk NBA 2K Mobile.
Cat Daddy juga melihat bahwa penanganan input yang lebih baik di GameActivity dapat menghindari jenis ANR ini, sehingga mereka memutuskan untuk berpindah ke GameActivity.
GameActivity adalah komponen
Android Game Development Kit, yang
dirancang untuk membantu game Android dalam memproses perintah siklus aplikasi, peristiwa
input, dan input teks dalam kode C/C++ aplikasi. GameActivity menawarkan
sejumlah peningkatan yang berfokus pada game dibandingkan NativeActivity
, seperti
Fragment
, rendering ke
SurfaceView
, dan dukungan lainnya
untuk library terkait pengembangan game populer.
GameActivity juga menggunakan buffering ganda dalam buffering inputnya, sehingga game dapat menangani kasus volume input tinggi ini dengan lebih baik.
Hasil
Dengan menerapkan GameActivity, Cat Daddy dapat meningkatkan penanganan input game secara signifikan, sehingga menghasilkan penurunan error ANR sebesar 35%. Solusi ini meningkatkan pengalaman pengguna dan menciptakan pengalaman gameplay yang lebih stabil.
Sebagai bonus tambahan, karena GameActivity mewarisi dari
FragmentActivity
,
CatDaddy juga dapat mengintegrasikan EmbeddedWebView dan EmbeddedVideoView,
yang diperlukan untuk beberapa integrasi game sosial terpopuler.
Mulai
Tingkatkan pengalaman game Anda sendiri dengan GameActivity dan Android Game Development Kit lainnya.