SORU
22 Aralık 2009, Salı


Android statik nesne yaşam döngüsü (Uygulama Kanunu deli)

Olay arama uygulaması oluşturma ediyorum, tek bir ekrandan arama kriterleri başka bir ekran doldurmak çıktık kullanıcı 3 ekrandan arama kriterleri düzenleyebilir ve 4 ekran gidiyor sonra.

Görev üzerinde ulaşmak için uygulama değerleri unutmayın ki statik bir nesne kullanıyorum ve ekstra herhangi bir şey yapmaya ihtiyacım yok.

Ama eğer yetersiz bellek android statik nesneleri sil bulunamadı eğer android hakkında statik bir nesne yaşam döngüsü eğer korkuyorum ???

Android destekler kullanıcı uygulaması geldiğinde eğer kullanıcı başka bir uygulamaya geçilirse ve çoklu görev, deli gibi davran, statik nesne görevi çok zaman kaldırıldı ??? bir fikrin var mı ?? ve de tek yöntemi ile statik nesne tutarak daha iyi bir yaklaşım gösteriyor ???

CEVAP
22 Aralık 2009, Salı


Sağlar arka plan biraz ile başla: uygulamayı başlattığınızda Ne olur?
OS bir süreç başlar ve bu süreç benzersiz bir kimlik atar ve İşlemi bir masa ayırır.Bir işlem OYUNU başlatmak(Dalvik VM); Her uygulama bir OYUNU içinde çalışır.
Bir OYUNU sınıf yükleme, örnek yaşam döngüsü, GC vb boşaltma yönetir.

Statik bir yaşam süresi: statik Bir değişken bir sınıf JVM tarafından yüklenir ve sınıf kaldırıldığında öldüğü zaman meydana gelir.

Bir android uygulaması oluşturmak ve statik bir değişkenin ilk değeri, aşağıdakilerden biri olana kadar JVM içinde kalır:
1. sınıfı kaldırıldı
2. JVM kapanır
3. süreci sona erer

Statik değişkenin değerini başka bir uygulama farklı bir aktivite ve yukarıdaki üç olur hiçbiri geçtiğinizde devam edeceğini unutmayın. Yukarıdaki üç herhangi bir statik değerini kaybeder gerçekleşmesi gerekir.

Birkaç satır kod ile bunu test edebilirsiniz:

  1. baskı statik aktivitenin onCreate - ^ başlatılmamış . baskı null
  2. statik başlatılamadı. baskı ->değeri olmayan boş olurdu
  3. Geri düğmesine basın ve eve gidin ekranı. Not: Giriş ekranı başka bir faaliyettir.
  4. Etkinliği yeniden - ^ başlatın . statik değişken olmayan boş olacaktır
  5. DDMS uygulama süreci(aygıtlar stop düğmesi pencere) öldürmek.
  6. Etkinlik - ^ yeniden başlatın . statik null değerine sahip olur.

Bu yardımcı olur umarım.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • SalGames2016

    SalGames2016

    17 Kasım 2012
  • StalkerJS

    StalkerJS

    15 HAZİRAN 2010
  • Vsauce

    Vsauce

    30 Temmuz 2007