Tutorial menyembunyikan notifikasi persisten di Android O yang muncul saat aplikasi latar belakang sedang berjalan atau saat overlay ditampilkan.
Pembaruan 25/8/17: Tutorial ini sekarang sudah usang, karena Google menambal metode yang kami gunakan untuk menyembunyikan pemberitahuan terus-menerus di latar belakang. Namun, kami telah menemukan solusi lain untuk masalah ini dan telah menulis tutorial singkat tentangnya Anda dapat menemukannya di sini.
Android O ingin menghadirkan peningkatan besar pada OS Android yang kita semua kenal dan sukai. Mode gambar-dalam-gambar untuk ponsel, saluran notifikasi, pemilihan teks cerdas, layanan pengisian otomatis, dan banyak sekali perubahan untuk meningkatkan masa pakai baterai, kinerja, dan keamanan Anda. Salah satu fitur yang seharusnya membantu pengguna mengatasi masalah masa pakai baterai dan kinerja adalah batasan proses latar belakang. Tanpa menjelaskan terlalu banyak detail, aplikasi di Android O tidak dapat lagi dibangunkan dari manifesnya yang terdaftar penerima siaran implisit dan mereka tidak dapat lagi memulai layanan latar belakang tanpa melaluinya Penjadwal Pekerjaan. Jika suatu aplikasi ingin memulai layanan latar belakang, aplikasi tersebut harus secara eksplisit memberi tahu pengguna bahwa aplikasi tersebut melakukannya dengan memposting pemberitahuan. Namun, ketika sebuah aplikasi berjalan di latar belakang, Android O kini tampak berfungsi
lain pemberitahuan terus-menerus memberi tahu Anda aplikasi apa yang sedang berjalan. Hal ini juga terjadi ketika aplikasi dengan SYSTEM_ALERT_WINDOW izin (seperti yang populer Senja app) saat ini sedang menampilkan overlay.Meskipun notifikasi ini diminimalkan secara default, notifikasi tersebut tidak dapat ditutup oleh pengguna atau diblokir secara permanen di Pengaturan. Perilaku ini sangat mengganggu bagi banyak pengguna, dan saya sangat berharap Google memberi kami cara untuk menonaktifkan notifikasi ini di rilis final Android O/Android 8.0. Namun, jika tidak, ya adalah masih ada cara untuk melakukannya sembunyikan secara permanen pemberitahuan aplikasi latar belakang yang persisten. Saya akan menunjukkan cara melakukannya dalam panduan langkah demi langkah, diikuti dengan penjelasan cara kerjanya serta peringatan penting.
Persyaratan:
- Android O
- Instal driver USB untuk ponsel khusus Anda jika Anda menggunakan Windows (dapat ditemukan Di Sini).
- Unduh Biner ADB untuk sistem operasi khusus Anda (jendela, Mac, Linux). Tautan ini akan selalu mengarah ke versi biner terbaru, jadi Anda tidak perlu menjelajahi internet untuk mencari versi terbaru.
- Ekstrak isi file ZIP yang Anda unduh ke folder yang mudah diakses di PC Anda (seperti di folder Downloads).
- Buka aplikasi Pengaturan di ponsel Anda dan ketuk opsi "Tentang Ponsel".
- Temukan Build Number dan ketuk 7 kali untuk mengaktifkan Mode Pengembang. Anda akan melihat popup setelah diaktifkan.
- Kembali ke menu utama Pengaturan dan masuk ke Opsi Pengembang sehingga Anda dapat mengaktifkan Mode USB Debugging.
- Hubungkan ponsel Anda ke PC dan geser ke bawah panel notifikasi untuk mengubah mode USB dari mode “charge only” ke mode “file transfer (MTP)”. Ini mungkin tidak diperlukan untuk ponsel Anda.
- Di PC Anda, telusuri direktori tempat Anda mengekstrak biner ADB.
- Luncurkan Command Prompt/Terminal di direktori ADB ini. Untuk pengguna Windows, ini dapat dilakukan dengan menekan Shift+Klik kanan lalu memilih opsi “buka command prompt di sini”.
- Setelah Anda berada di lingkungan Command Prompt atau Terminal, masukkan perintah berikut:
adb devices
- Ini akan memulai daemon ADB. Jika ini pertama kalinya Anda menjalankan ADB, Anda juga akan melihat perintah di ponsel yang meminta Anda untuk mengotorisasi koneksi.
- Sekarang jalankan kembali perintah adb devices dari langkah 10, dan command prompt/terminal akan mencetak nomor seri perangkat Anda. Jika ya, maka Anda siap untuk melanjutkan. Jika tidak, kemungkinan besar driver USB tidak terinstal dengan benar.
- Kembali ke Command Prompt dan masukkan perintah berikut:
adb shell
- Sekarang jalankan perintah berikut:
cmd appops set android POST_NOTIFICATION ignore
- Anda tidak akan mendapatkan pesan sukses atau apa pun, tetapi selama Anda tidak melihat kesalahan, pesan tersebut seharusnya berhasil. Sekarang reboot saja ponsel Anda!
Ya, saya menyadari ini adalah gambar layar ponsel, bukan tangkapan layar. Saya sendiri tidak memiliki perangkat yang kompatibel dengan Android O, jadi saya meminta TK untuk mengirimi saya gambar.
- Jika Anda ingin mengembalikan perintah ini, masukkan ini ke dalam command prompt:
cmd appops set android POST_NOTIFICATION allow
Bagaimana itu bekerja
Dengan menggunakan antarmuka baris perintah tersembunyi untuk App Ops, sistem manajemen izin yang dapat diakses oleh pengguna Android, kami dapat membatasi izin POST_NOTIFICATION dari paket "android". (Catatan: kami mengaturnya menjadi "abaikan" daripada "menolak" karena "menolak" dapat menyebabkan beberapa kesalahan.) Saya menemukan izin ini dengan melihat kode sumber yang relevan untuk ManajerOps Aplikasi, yang mencantumkan semua kemungkinan izin yang dapat diberikan/dicabut, banyak di antaranya tidak dapat diakses di pengaturan Android. Paket "android" sebenarnya mengacu pada "Sistem Android" AKA framework-res.apk, yang bertanggung jawab atas pemberitahuan terus-menerus yang kami coba hilangkan.
Dengan mencabut izin POST_NOTIFICATION Sistem Android, pemberitahuan tidak dapat lagi ditampilkan! Kedengarannya cukup sederhana, bukan? Sayangnya, ada peringatan yang harus diperhatikan. "Sistem Android" bertanggung jawab atas lebih dari sekedar pemberitahuan ini, jadi pemberitahuan lain yang mungkin dipostingnya tidak akan ditampilkan lagi. Ini dapat mencakup notifikasi mode USB (yang masih dapat diubah melalui pengaturan di Opsi Pengembang) serta beberapa hal lainnya.
Meskipun ini adalah tindakan yang cukup drastis yang harus kami lakukan, saat ini ini adalah satu-satunya cara untuk menyembunyikan pemberitahuan ini mulai dari me-rooting ponsel Anda dan memodifikasi kerangka kerja itu sendiri yang jelas merupakan sesuatu yang tidak diinginkan atau mampu dilakukan oleh banyak pengguna melakukan. Saya sangat berharap Google menawarkan cara untuk menyembunyikan pemberitahuan ini di rilis Android O mendatang, atau bahkan lebih baik lagi, menghapus pemberitahuan ini sepenuhnya. Dapat dimengerti bahwa Google ingin meningkatkan pengalaman pengguna dengan memberi tahu pengguna saat aplikasi berjalan di latar belakang pengguna mungkin tidak menyadarinya, tetapi metode yang mereka pilih mengganggu bagi kita yang tahu bagaimana dengan setiap aplikasi kita menggunakan.