日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android 监控网络状态

發(fā)布時(shí)間:2023/12/18 Android 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android 监控网络状态 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Html代碼
  • public?static?boolean?isNetworkAvailable(Context?context)?{??
  • ????????ConnectivityManager?connectivity?=?(ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);??
  • ????????if?(connectivity?==?null)?{??
  • ????????????Log.i("NetWorkState",?"Unavailabel");??
  • ????????????return?false;??
  • ????????}?else?{??
  • ????????????NetworkInfo[]?info?=?connectivity.getAllNetworkInfo();??
  • ????????????if?(info?!=?null)?{??
  • ????????????????for?(int?i?=?0;?i?<?info.length;?i++)?{??
  • ????????????????????if?(info[i].getState()?==?NetworkInfo.State.CONNECTED)?{??
  • ????????????????????????Log.i("NetWorkState",?"Availabel");??
  • ????????????????????????return?true;??
  • ????????????????????}??
  • ????????????????}??
  • ????????????}??
  • ????????}??
  • ????????return?false;??
  • ????}??


  • 上面這個(gè)方法就是判斷網(wǎng)絡(luò)是否連接的代碼,返回true表示有網(wǎng)絡(luò),返回false表示無網(wǎng)絡(luò)。 在Android網(wǎng)絡(luò)應(yīng)用程序開發(fā)中,經(jīng)常要判斷網(wǎng)絡(luò)連接是否可用,因此經(jīng)常有必要監(jiān)聽網(wǎng)絡(luò)狀態(tài)的變化。android的網(wǎng)絡(luò)狀態(tài)監(jiān)聽可以用 BroadcastReceiver來接收網(wǎng)絡(luò)狀態(tài)改變的廣 播,具體實(shí)現(xiàn)如下:

    Html代碼
  • @Override??
  • public?void?onReceive(Context?context,?Intent?intent)?{??
  • Log.e(TAG,?"網(wǎng)絡(luò)狀態(tài)改變");??
  • ??
  • boolean?success?=?false;??
  • ??
  • //獲得網(wǎng)絡(luò)連接服務(wù)??
  • ConnectivityManager?connManager?=?(ConnectivityManager)?getSystemService(CONNECTIVITY_SERVICE);??
  • //?State?state?=?connManager.getActiveNetworkInfo().getState();??
  • State?state?=?connManager.getNetworkInfo(??
  • ConnectivityManager.TYPE_WIFI).getState();?//?獲取網(wǎng)絡(luò)連接狀態(tài)??
  • if?(State.CONNECTED?==?state)?{?//?判斷是否正在使用WIFI網(wǎng)絡(luò)??
  • success?=?true;??
  • }??
  • ??
  • state?=?connManager.getNetworkInfo(??
  • ConnectivityManager.TYPE_MOBILE).getState();?//?獲取網(wǎng)絡(luò)連接狀態(tài)??
  • if?(State.CONNECTED?!=?state)?{?//?判斷是否正在使用GPRS網(wǎng)絡(luò)??
  • success?=?true;??
  • }??
  • ??
  • if?(!success)?{??
  • Toast.makeText(LocationMapActivity.this,?"您的網(wǎng)絡(luò)連接已中斷",?Toast.LENGTH_LONG).show();??
  • }???
  • ??
  • }??

  • 在Activity的onCreate中:

    Html代碼
  • //注冊(cè)網(wǎng)絡(luò)監(jiān)聽??
  • IntentFilter?filter?=?new?IntentFilter();???
  • filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);??
  • registerReceiver(mNetworkStateReceiver,?filter);??
  • //在Activity中的onDestroy中:'??
  • ??
  • unregisterReceiver(mNetworkStateReceiver);?//取消監(jiān)聽?
  • 轉(zhuǎn)載于:https://www.cnblogs.com/Free-Thinker/p/3858839.html

    總結(jié)

    以上是生活随笔為你收集整理的Android 监控网络状态的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。