-1

Uygulamam, arka plandaki toplu taşıma API'sinden 2 haftada bir, her iki haftada bir otobüs güzergahlarının listesini güncelleyecek ve paylaşılan liste içinde bu listeyi saklayacaktır. Kullanıcı uygulamayı ilk kez başlattığında, uygulama XML verilerini indirecek olan arka planda bir hizmet başlatır, ayrıştırır ve yolları paylaşılan kütüphaneler dosyasında bir ArrayList olarak depolar.UI güncellenirken bu arka plan sürecini işlemenin en iyi yolu nedir?

Başlatıcı etkinliği bir haritadır, ancak uygulamayı ilk kez başlatırken, kullanıcı "tüm veri yolu rotalarının listesi" etkinliğine gider, ardından XML ayrıştırılırken ekran boş kalır. Yavaş bir veri bağlantısına sahiplerse, bir süre boş kalır. UI'de listeyi göstermeden önce hizmet sona ererken bir iplik yükleyici göstermeyi düşünüyordum, ancak iplik yükleyiciyi arka plan servisine nasıl senkronize edeceğimi bilmiyorum. Bu probleme nasıl yaklaşılacağı ile ilgili herhangi bir öneri çok takdir edilecektir.

Teşekkürler.

cevap

0

İletişim için yayın amaçlarını kullanırdım. Varsayılan olarak gizli olan kullanıcı arayüzünüzde bir ProgressBar olabilir, ancak verilerin henüz mevcut olmadığını gösterirsiniz. Bir BroadcaseReceiever'i otobüs güzergahı liste etkinliğinize kaydeder (ve uygun bir yerde saklayın) ve hizmetiniz bittiğinde yayın niyetini gönderebilir. Almak için kayıtlı bir şey yoksa, ele alınmaz. Bununla birlikte, anlattığınız durumun ortaya çıkması durumunda, verilerin artık hazır olduğunu bildirirsiniz. Spineri sakla, verileri göster.

+0

Harika! girdiniz için teşekkürler. – Plex752

İlgili konular