Sunucudan getirilen bazı verileri görüntüleyen bir etkinliğim var. Herhangi bir bağlantı yoksa, aktivite önbelleğe alınmış bazı verileri görüntüler; Bağlantı mevcutsa, etkinlik verileri getirir ve görüntüler. Her şey beklendiği gibi çalışıyor.
Şimdi, etkinliğimi, bağlantı gerçekleşir gerçekleşmez yeniden yüklemeyi istiyorum.android aktivite ve yayın alıcısı arasında iletişim kurmak
Yayın alıcısı benim apaçık dosyasında bildirildi
public class ConnectionChangeReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
ConnectivityManager connectivityManager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo();
if (activeNetInfo != null) {
//what to do here?
}
}
}
:
: Benim etkinlikte<receiver android:name=".ConnectionChangeReceiver" android:label="NetworkConnection"> <intent-filter> <action android:name="android.net.conn.CONNECTIVITY_CHANGE"/> </intent-filter> </receiver>
, ben alıcıyı kayıt Ben BroadcastReceiver uzanan basit Alıcı kullanıyorum
BağlantıDeğişimYeni alıcı = yeni ConnectionChangeReceiver(); this.registerReceiver (alıcı, yeni IntentFilter (ConnectivityManager.CONNECTIVITY_ACTION));
Şimdi, daha sonra ne yapacağım gibi kafam karıştı. OnReceive yöntemi uygulandığında, etkinliğimin bundan haberdar edilmesi nasıl yapılır? Yeni bir aktivite başlatabileceğimi biliyorum, ama bu gerçekten istediğim şey değil. ConnectionChangeReceiver'ı etkinlikimin özel bir sınıfı olarak mı bildirmeliyim? Yoksa başka bir çözüm var mı?
Bağlantı OluşturmaYazı bağlantıların farkında olmak istediğiniz etkinliğin içinde sınıflayın, içten bağlantıya geçin, bağlantı sinyalini aldıktan sonra UI bölümlerini güncelleyin. – sat