Android 動(dòng)態(tài)注冊監(jiān)聽網(wǎng)絡(luò)變化實(shí)例詳解
為天峻等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及天峻網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為做網(wǎng)站、成都網(wǎng)站制作、天峻網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
新建一個(gè)BroadcastTest項(xiàng)目,然后修改MainActivity中的代碼,如下:
public class MainActivity extends AppCompatActivity { private IntentFilter intentFilter; private NetworkChangeReceiver networkChangeReceiver; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); intentFilter=new IntentFilter(); intentFilter.addAction("android.net.conn.CONNECTIVITY_CHANGE"); //廣播接收器想要監(jiān)聽什么廣播,就在這里添加相應(yīng)的action networkChangeReceiver=new NetworkChangeReceiver(); registerReceiver(networkChangeReceiver,intentFilter); //調(diào)用resigerReceiver()方法進(jìn)行注冊 } @Override protected void onDestroy(){ super.onDestroy(); unregisterReceiver(networkChangeReceiver); } class NetworkChangeReceiver extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent){ // Toast.makeText(context,"network changes",Toast.LENGTH_SHORT).show(); ConnectivityManager connectionManager=(ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); //得到系統(tǒng)服務(wù)類 NetworkInfo networkInfo=connectionManager.getActiveNetworkInfo(); if(networkInfo!=null&&networkInfo.isAvailable()){ Toast.makeText(context,"network is available",Toast.LENGTH_SHORT).show(); }else{ Toast.makeText(context,"network is unavailable",Toast.LENGTH_SHORT).show(); } } } }
動(dòng)態(tài)注冊的廣播接收器一定要取消注冊才行,在onDestroy()方法中通過調(diào)用unregisterReceiver()方法來實(shí)現(xiàn)。
訪問系統(tǒng)的網(wǎng)絡(luò)狀態(tài)需要聲明權(quán)限,打開AndroidManifest.xml文件,在里面加入權(quán)限,如下:
<?xml version="1.0" encoding="utf-8"?>
運(yùn)行程序,打開數(shù)據(jù)連接、關(guān)閉數(shù)據(jù)連接,效果如下:
以上就是Android 動(dòng)態(tài)注冊監(jiān)聽網(wǎng)路變化的實(shí)例詳解,如果大家有疑問可以留言或者到本站社區(qū)交流,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!