Pada Ice Cream Sandwich (ICS) OS mengkategorikan aplikasi Anda dan masing-masing kategori memiliki ambangnya sendiri di mana OS digunakan untuk menentukan aplikasi mana yang ditutup lebih dulu ketika kehabisan memori.
Adakah di antara Anda yang terganggu oleh, misalnya Anda membuka penghitung waktu untuk berjalan di latar belakang untuk mengukur waktu yang berlalu dari sesuatu, lalu Anda membuka beberapa aplikasi lagi dan kembali ke penghitung waktu Anda hanya untuk melihatnya diatur ulang atau ditutup? Maksudku, serius, ini benar-benar menyebalkan.
Apakah ada cara untuk memaksa aplikasi agar tetap berjalan di latar belakang tidak peduli apa pun saat OS kehabisan memori?
4.0-ice-cream-sandwich
ram
samsung-galaxy-s-3
supertonsky
sumber
sumber
Jawaban:
Jawaban yang diterima ternyata salah atau ketinggalan zaman. Modul "Pengaturan Aplikasi" untuk aplikasi Xposed memungkinkan Anda menentukan secara per aplikasi untuk menjaga aplikasi agar tidak terbunuh atau dibebaskan:
http://repo.xposed.info/module/de.robv.android.xposed.installer
http://repo.xposed.info/module/de.robv.android.xposed.mods.appsettings
Perawatan yang bertanggung jawab tentu saja harus dilakukan ketika bermain dengan aplikasi mengubah perilaku tingkat rendah tersebut.
sumber
Jawaban sederhana: Tidak. Android selalu menggunakan OOM (Kehabisan Memori) memprioritaskan untuk membebaskan memori yang tidak digunakan. Anda dapat mengubah prioritas aplikasi (setidaknya sampai reboot) dengan beberapa task manager tetapi meskipun itu jika kehabisan memori, aplikasi di latar belakang mulai terbunuh.
Pikirkan skenario ini: Anda telah mengunduh aplikasi berkode buruk yang berjalan saat boot, menyebabkan buffer overflow dan menyimpan semua memori Anda. Biasanya, aplikasi ini terbunuh, tetapi jika tetap dibuka secara efektif akan merusak ponsel Anda sampai reboot, dan setelah itu dimulai lagi, dan lagi, dll.
Beberapa penghitung waktu menggunakan layanan dengan prioritas tinggi untuk menghindari masalah ini, tetapi jika Anda meluncurkan aplikasi pemogokan sumber daya berkinerja tinggi yang cukup ketika pengatur waktu berada di latar belakang, penghitung waktu pada akhirnya akan terbunuh.
sumber
Integer.MAX_VALUE
kali. Mengapa Anda pikir segala sesuatunya dibatasiInteger.MAX_VALUE
?Tidak. Namun, dua metode untuk mengatasi masalah muncul di pikiran tetapi keduanya hanya dapat diterapkan oleh pengembang: Yang pertama adalah menampilkan pemberitahuan, Android akan memberikan aplikasi yang melakukan ini prioritas yang lebih tinggi daripada yang lain. Yang kedua adalah untuk menghemat waktu mulai sehingga ketika timer pada akhirnya restart, itu tidak akan diatur ulang.
sumber
onSaveInstanceState
danonRestoreInstanceState
untuk mengamankan status Aplikasi, termasuk informasi pengatur waktu. Tidak perlu dijalankan di Foreground. Bahkan jika itu alarm yang dapat Anda gunakanAlarmManager
untuk memastikan bahwa itu dieksekusi nanti. Satu-satunya alasan di mana Foreground harus digunakan adalah: 1. Anda memiliki aktivitas foreground aktual yang sedang berlangsung, seperti memutar musik atau menampilkan video. 2. Anda ingin menjaga koneksi data tetap terbuka (mis. IMAP IDLE (push)).Metode 1: - Jika Anda membuat Sticky Thread dalam program ini, ya Anda bisa menjalankan program dengan paksa. Namun ingat pengguna pada mode pengaturan lanjutan dapat menghentikan aplikasi yang berjalan di latar belakang. Namun jika Anda menulis utas lengket dengan cara yang dimulai pada setiap acara yang terjadi maka ini dapat dicapai.
Metode 2: JIKA pengguna non-root Android dan Anda ingin menjalankan aplikasi di latar belakang th. gunakan skrip SL4 di latar belakang dari aplikasi. gunakan skrip yang akan melakukan pemeriksaan latar belakang dan program dan menulis ujung depan untuk menunjukkan sesuatu yang lain.
Misalnya: Di sebagian besar mesin game ini dibangun. Mereka terhubung ke server meskipun pengguna mematikan aplikasi. Alasan mesin membuat beberapa skrip di telepon yang diperiksa secara acak pada setiap acara tertentu dan bahwa TRIGGER digunakan untuk menjalankan aplikasi Anda secara terus-menerus di latar depan latar depan.
*** Maaf untuk TYPO's .. pemeriksa ejaan tidak tersedia. Semoga Anda mencapai apa yang ingin Anda dapatkan.
sumber
Terkadang ada opsi untuk mengunci aplikasi. Ini mencegah pembunuhan atau penghentian aplikasi itu di telepon.
Opsi kunci tidak tersedia di OS itu sendiri, menggunakan beberapa aplikasi pihak ketiga seperti GO Task Manager , dll, dapat membantu.
sumber