Uyurken uygulamaların öldürülmesini nasıl durdurabilirim?


11

Droid 2'm var. Telefonumu kullanmadığım sırada çalışmayı bırakmak istediğim uzun, kaynak yoğun bir oyunum var (spektral ruhlar). Ana ekrana geri dönmek ve hemen oyunu yeniden başlatmak için Android "Ana Sayfa" düğmesine basarsam, bıraktığım yer tam olarak burada olacak. Uyku için güç düğmesine basarsam ve hemen telefonu açar, kilidi açar ve oyunu yeniden başlatırsam aynı şey.

Bir süre bırakırsam (birkaç saat), o zaman geri dönüp oyunu başlattığımda, sanki hiç koşmuyormuş gibi taze başlar. Senkronizasyon açık olmasına rağmen, telefon bu arada hiçbir şey için kullanılmadı.

Sorum iki yönlüdür: Hangi uygulamaların ne zaman ve neden öldürüldüğü hakkında nasıl daha fazla bilgi edinebilirim ve bu uygulamanın çalışmaya devam etmesine izin verecek şekilde nasıl ayarlayabilirim? Arka planda bir şey yapmasına ihtiyacım yok, sadece geri döndüğümde hala orada olmasını istiyorum.

Gerektiği gibi Android temizleme belleği kavramına aşinayım ve bir görev katiline ihtiyaç duymuyorum, ancak gerçekten çıkmadığım sürece bu görevi öldürmemesini istiyorum.


Gerçek koda erişiminiz olmadığını varsayalım?
Nanne

Doğru, bunlar uygulama mağazasından satın alınan kapalı kaynaklı uygulamalardır.
Jason Viers

Yanıtlar:


2

Android'in varsayılan tasarımında bir seçenek olmadığından eminim. Çoğu zaman kişisel olarak böyle şeyler için bir uygulama görmedim çünkü çoğu insan telefonun hızını korumak için programların kapanmasını istiyor. Kullanılmayan programları kapatan android sistemidir. Uygulamanın yaratıcısı, arka planda çalışmasını veya her zaman hesaplama veya ses üzerinde çalışmasını sağlamak için bir hizmet tasarlamak zorunda kalacak, böylece sistem programın bir şey yaptığını düşünecekti. Bu pilinizi tüketir.


Birinci ve üçüncü cümleleriniz kesinlikle doğru olsa da, diğerleri doğru değildir.
Michael

2

Öneri: Uygulamanız için ekran zaman aşımını devre dışı bırakmak için Tasker'ı kullanın . Bu olabilir arka gitmesini engellemek.


Bir göz atacağım ve deneyeceğim, teşekkürler! Herhangi bir başarı veya başarısızlığı not edeceğim.
Jason Viers

Tasker'da ekran zaman aşımını değiştirmenin uygulamanın öldürülmesini engellemeyeceğini onaylayabilirim. Yine de öneriniz için teşekkürler.
Jason Viers

1
Bekle, bu ekranın kapanmasını engellemez mi? Pili boşa harcıyor musunuz?
Michael

2

Sorunuzun ilk bölümüne;

hangi uygulamaların ne zaman ve neden öldürüldüğü hakkında nasıl daha fazla bilgi edinebilirim?

Android SDK'sının Android Belleğinde hızlı bir toplamı vardır http://developer.android.com/guide/topics/fundamentals.html

Varsayılan olarak, her uygulama kendi Linux işleminde çalışır. Android, uygulamanın bileşenlerinden herhangi birinin yürütülmesi gerektiğinde işlemi başlatır, ardından artık gerekli olmadığında veya sistemin diğer uygulamalar için belleği kurtarması gerektiğinde işlemi kapatır.

Böylece, Android, onu kullanmadığınızı belirlediğinde (uygulamada çıkmayı tıkladım) veya kaynaklarınız bittiğinde programları öldürmek olarak özetlenebilir. Örneğin, 512 MB RAM ve 10 ücretsiz varsa ve 12'ye ihtiyaç duyan bir uygulamayı başlatırsanız, 12'yi alabileceği en az kullanılan uygulamayı belirlemeye çalışır.

Bunu oldukça iyi yapma eğilimindedir (en azından benim deneyimimde). Oyununuzdan eve gidip birkaç şey yapabilirsiniz, ancak üçüncü şeyde oyunu tahliye edecektir. Özellikle kaynak yoğun oyunların nasıl olduğunu aklınızda bulundurun, bu nedenle bu uygulamayı daha sonra değil, daha erken öldürecektir.

Şimdi zaman geçtikten sonra kaybolmasının nedeni, büyük olasılıkla kaynaklar için başlamaya ve rekabet etmeye çalışan senkronizasyon işlemlerinizin olmasıdır. Uygulamaların bellek sayfaları bu noktada çok seyrek vuruldu, bu yüzden işletim sisteminin gerekli olduğunu düşündüğü herhangi bir bellek ıslahına karşı adil bir oyun.

İkinci sorunuza;

bu uygulamanın çalışmaya devam etmesine izin verecek şekilde nasıl ayarlayabilirim?

Görev katili kullanmıyorum, ama eminim iyi olanlar (ATK lideri https://market.android.com/details?id=com.rechild.advancedtaskkiller&feature=search_result ) bir istisna var eminim liste. İstediğiniz oyunu beyaz listeye eklemek ve diğer işlemleri kara listeye almak mümkün olabilir.

Ben de bu oyuna aşina değilim, bu yüzden otomatik kaydetme yetenekleri ve böyle bir şey olduğundan emin değilim. Umarım biraz yardımcı oldum.


1

Hangi uygulamaların öldürüldüğünü ve neden daha fazla bilgi edinebilirsiniz?

Telefonunuzu adb'ye bağlayabilirsiniz ; ve sonra logcat'i açın ; çıktı dosyaya kaydediliyor.
Günlük dosyasında tonlarca bilgi olacak; uygulama adınızı arayarak; ne zaman öldürüldüğünü öğrenebilirsiniz.

Android sistemi tarafından durdurulmasını önlemek için ne yapabilirsiniz?
Bilmiyorum; Umarım cevap cevap verir.
Ancak; Geliştiriciyle iletişim kurar ve ona sorunu söylerdim, çünkü düzeltmek için en kolay zamana sahip olmalı


Logcat çözümünden bahsetmek üzereydim. Sadece ActivityManager (android iç "görev katil") için bakmak olduğunu eklemek istiyorum.Androidler öldürme app engelleyemezsiniz. Android fikri, bir uygulama işlemi tamamen öldürülürse, uygulamanın önceki durumunu geri yükleyebilmesidir. Bu yüzden uygulama geliştiricileri oyuna baştan başlamadığınızdan emin olmak zorundalar.
Akış
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.