AsyncTasks'ın başlatma etkinlikleri ile birlikte yok edilmediğini ifade ettim. Ve true.Android OnDestroy() ve AsCreate() yeniden başlatıldıktan sonra AsyncTask'a yeniden bağlanılıyor mu?
AsyncTask'ı her 3 saniyede bir Log.i()
mesajını 1 dakikada yayınladım. Ve aktivitenin onDestroy()
yöntemine Log.i()
messsage koydu.
Etkinliğin yok edildiğini görüyorum, ancak AsyncTask, tüm 20 Log.i()
iletilerini tamamlayana kadar çalışmaya devam ediyor. Ve ben kafam karıştı.
Ne AsyncTask tahrip UI'ya
publishProgress()
olsaydı?
Sanırım bir çeşit istisna meydana geliyor, değil mi?AsyncTask verileri
class Application
global değişkeninde depolarsa ne olur?
Burada bir fikir yok, NullPointer istisnası?Uygulama yeniden başlatılırsa ne olur?
Muhtemelen yeni bir AsyncTask başlatır. Hala çalışan AsyncTask ile yeniden bağlanabilir mi?Ana uygulama yok edildikten sonra AsyncTask ölümsüz mü?
Belki evet, UI uygulaması artık görünür değilken, tüm LogCat uygulamaları iletileri günlüğe kaydetmeyi sürdürüyor, belki de yok olabilir? Ve onları yeniden açtığınızda, size “ölü” iken ortaya çıkan dağınıklıkları gösterirler.
Tüm bunlar bir tartışma gibi görünüyor, ama soru başlıkta. Uygulamanın yeniden başlatıldığı zaman yeniden bağlanmak istediğim bu yetim AsyncTask'ım var, ama nasıl yapacağımı bilmiyorum.
Bunun neden önemli olduğunu söylemeyi unuttum. Bir yön değişikliği olduğunda uygulama bozulur. Ve AsyncTask tarafından üretilen verileri kaybetmek istemiyorum, onu durdurmak ve yeniden başlatmak istemiyorum. Yönlendirme değişikliklerinin yapılmasından sonra devam etmesini ve yeniden bağlanmasını istiyorum.