Android Pie menambahkan fitur untuk mencegah mematikan game yang banyak RAM jika Anda keluar secara tidak sengaja

Android Pie diluncurkan hari ini dan salah satu fitur keren yang tersembunyi adalah kemampuan untuk mencegah game yang membutuhkan banyak RAM agar tidak mati jika Anda keluar secara tidak sengaja.

Sebelumnya hari ini, Google diumumkan secara resmi Android Pie untuk Google Pixel dan Google Pixel 2. Segera setelah itu, Penting dirilis pembaruan Android 9 untuk Telepon Esensial. Perangkat lain yang berpartisipasi dalam program Android P beta akan segera menerima pembaruan, sehingga pengguna yang melewatkan Pratinjau Pengembang sekarang memiliki banyak hal yang harus dilakukan. Saat kami menggali rilis terbaru termasuk kode sumber dijatuhkan pada AOSP dan Dokumen Definisi Kompatibilitas (CDD) terbaru, kami akan memperbarui Anda secara berkala dengan informasi baru apa pun yang kami temukan. Sesuatu yang menarik yang kami temukan di CDD adalah bagian untuk aplikasi dan game "kelas berat" (berat RAM). dimana Android Pie akan memprioritaskan menyimpan aplikasi ini di RAM jika pengguna keluar secara tidak sengaja mereka.

Aplikasi dan Game "Kelas Berat" di Android Pie

Bagian baru telah ditambahkan ke CDD yang menguraikan fitur ini. Inilah yang dikatakannya:

3.17. Aplikasi Kelas Berat

Jika implementasi perangkat mendeklarasikan fitur FEATURE_CANT_SAVE_STATE, maka implementasi tersebut:

  • [C-1-1] HARUS hanya memiliki satu aplikasi terinstal yang menentukan cantSaveState berjalan di sistem pada satu waktu. Jika pengguna meninggalkan aplikasi tersebut tanpa keluar secara eksplisit (misalnya dengan menekan tombol home sambil keluar dari aktivitas aktif sistem, alih-alih menekan kembali tanpa ada yang tersisa aktivitas aktif dalam sistem), maka implementasi perangkat HARUS memprioritaskan aplikasi tersebut di RAM seperti yang dilakukannya untuk hal-hal lain yang diharapkan tetap berjalan, seperti latar depan jasa. Saat aplikasi tersebut berada di latar belakang, sistem masih dapat menerapkan fitur manajemen daya, seperti membatasi akses CPU dan jaringan.
  • [C-1-2] HARUS menyediakan kemampuan UI untuk memilih aplikasi yang tidak akan berpartisipasi dalam mekanisme penyimpanan/pemulihan status normal setelah pengguna meluncurkan aplikasi kedua yang dideklarasikan dengan atribut cantSaveState.
  • [C-1-3] TIDAK BOLEH menerapkan perubahan lain dalam kebijakan pada aplikasi yang menentukan CantSaveState, seperti mengubah performa CPU atau mengubah prioritas penjadwalan.

Jika implementasi perangkat tidak mendeklarasikan fitur tersebut FEATURE_CANT_SAVE_STATE , kemudian mereka:

  • [C-1-1] HARUS mengabaikan atribut cantSaveState yang disetel oleh aplikasi dan TIDAK HARUS mengubah perilaku aplikasi berdasarkan atribut tersebut.

Pada dasarnya, ini berarti, jika suatu perangkat mendukung FEATURE_CANT_SAVE_STATE fitur tersebut, maka mereka harus memprioritaskan penyimpanan dalam RAM aplikasi yang sedang berjalan yang menentukan tidak bisaSaveState atribut. Prioritas RAM ini berlaku jika pengguna keluar dari aplikasi atau game dengan menekan tombol beranda atau keluar dari aplikasi atau game tanpa keluar secara eksplisit (misalnya dengan menekan tombol kembali atau tombol keluar.) Selain itu, sistem masih dapat menghemat daya dengan membatasi akses CPU dan jaringan pada aplikasi tersebut, namun sistem tidak dapat mengosongkan RAM dengan mematikannya kecuali jika diperlukan. diperlukan. Terakhir, perhatikan bahwa hanya satu aplikasi dengan atribut cantSaveState yang ditentukan yang diizinkan untuk berjalan. Jika Anda mencoba meluncurkan aplikasi lain dengan atribut ini yang ditentukan saat aplikasi lain sedang berjalan, Android Pie akan meminta Anda memilih game mana yang ingin terus Anda jalankan.

Anda dapat memeriksa apakah perangkat Anda mendukung FEATURE_CANT_SAVE_STATE dengan menjalankan dua perintah berikut melalui ADB:

adb shell
dumpsys package | grep "cant_save_state"

Untuk memeriksa apakah suatu aplikasi menentukan atribut cantSaveState perlu mendekompilasi aplikasi dan melihat manifesnya atau menggunakan dumpsys package package.name.here perintah di shell ADB. Perlu diingat bahwa atribut ini baru saja ditambahkan di API level 28 (Android 9 Pie) sehingga kecil kemungkinannya banyak aplikasi atau game akan memanfaatkan atribut ini.

Fitur ini akan sangat berguna untuk perangkat dengan jumlah RAM kecil dan/atau aplikasi yang memakan banyak RAM. Misalnya saja Fortnite Mobile di Android membutuhkan minimal 3GB RAM karena banyaknya RAM yang dikonsumsi (bahkan tanpa meluncurkan game, Fortnite Mobile mencadangkan 1,6 GB RAM di Google Pixel 2 XL saya.) Jika Fortnite menargetkan SDK level 28 dan gunakan fitur ini, artinya keluar dari game secara tidak sengaja diharapkan dapat mencegahnya langsung terbunuh jika perangkat Anda hampir habis RAM gratis. Sayangnya, Fortnite hanya menargetkan SDK level 21 saat ini (Android 5.0 Lollipop) jadi sayangnya tidak memanfaatkan API terbaru yang ditawarkan Google di Android Pie, apalagi Android Oreo, Android Nougat, atau Android Marshmallow. Semoga game lain memperbarui untuk memanfaatkan fitur ini. Pada tahun depan, Google akan membutuhkan mereka untuk memperbarui jika mereka ingin dapat terus mengirimkan pembaruan di Google Play Store.