我在我的活動中使用廣播接收器來檢查互聯網是否連接,如果它連接,那麼它應該發出一個http請求,否則顯示一個警告對話框,說沒有互聯網連接,它是工作正常。廣播接收器完成應用程序
問題我的整個應用程序使用互聯網連接,所有的活動。我應該如何使廣播接收器可用通過應用程序。
我Broadcast Receiver class
private BroadcastReceiver mConnReceiver = new BroadcastReceiver() {
public void onReceive(Context context, Intent intent) {
boolean noConnectivity = intent.getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY, false);
String reason = intent.getStringExtra(ConnectivityManager.EXTRA_REASON);
boolean isFailover = intent.getBooleanExtra(ConnectivityManager.EXTRA_IS_FAILOVER, false);
currentNetworkInfo = (NetworkInfo) intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO);
otherNetworkInfo = (NetworkInfo) intent.getParcelableExtra(ConnectivityManager.EXTRA_OTHER_NETWORK_INFO);
if(currentNetworkInfo.isConnected())
{
Toast.makeText(getApplicationContext(), "Internet Connected", Toast.LENGTH_LONG).show();
}
else
{
Toast.makeText(getApplicationContext(), "Internet Not Connected", Toast.LENGTH_LONG).show();
}
}
};
和onCreate
this.registerReceiver(this.mConnReceiver,
new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION));
你想在用戶連接到互聯網時得到通知,或者你想檢查他是否連接(你不需要BroadcastReceiver)? – RvdK
你可以有一個抽象的活動,它實現了Braodcardreceiver,並將活動範圍擴展到其他活動 –
@RvdK我的整個應用程序主要在web服務(json)的幫助下工作在互聯網上,所以我希望用戶在連接丟失 –