国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android 動態注冊監聽網絡變化實例詳解

2019-10-22 18:31:49
字體:
來源:轉載
供稿:網友

Android 動態注冊監聽網絡變化實例詳解

新建一個BroadcastTest項目,然后修改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");  //廣播接收器想要監聽什么廣播,就在這里添加相應的action    networkChangeReceiver=new NetworkChangeReceiver();    registerReceiver(networkChangeReceiver,intentFilter);       //調用resigerReceiver()方法進行注冊  }  @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);  //得到系統服務類      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();      }    }  }}

動態注冊的廣播接收器一定要取消注冊才行,在onDestroy()方法中通過調用unregisterReceiver()方法來實現。

訪問系統的網絡狀態需要聲明權限,打開AndroidManifest.xml文件,在里面加入權限,如下:

<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android"  package="com.example.administrator.broadcasttest">  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>  <application    android:allowBackup="true"    android:icon="@mipmap/ic_launcher"    android:label="@string/app_name"    android:supportsRtl="true"    android:theme="@style/AppTheme">    <activity android:name=".MainActivity">      <intent-filter>        <action android:name="android.intent.action.MAIN" />        <category android:name="android.intent.category.LAUNCHER" />      </intent-filter>    </activity>  </application></manifest>

運行程序,打開數據連接、關閉數據連接,效果如下:

Android,動態注冊監聽網絡變化,監聽網路Android,動態注冊監聽網絡變化,監聽網路

以上就是Android 動態注冊監聽網路變化的實例詳解,如果大家有疑問可以留言或者到本站社區交流,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 吉木萨尔县| 屏南县| 西乌珠穆沁旗| 株洲市| 迁西县| 浙江省| 钟祥市| 南通市| 宜黄县| 长乐市| 灌云县| 简阳市| 仙居县| 长治县| 嘉峪关市| 类乌齐县| 浠水县| 自治县| 江北区| 乌兰县| 龙南县| 浪卡子县| 出国| 中阳县| 东宁县| 九台市| 濉溪县| 合作市| 汽车| 马关县| 民权县| 平乡县| 汉源县| 唐海县| 泰宁县| 兴国县| 襄汾县| 泰顺县| 尚志市| 阜平县| 陆河县|