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

首頁 > 系統 > Android > 正文

Android判斷設備網絡連接狀態及判斷連接方式的方法

2020-04-11 11:22:00
字體:
來源:轉載
供稿:網友

本文實例講述了Android判斷設備網絡連接狀態及判斷連接方式的方法。分享給大家供大家參考,具體如下:

在Android開發過程中,對于一個需要連接網絡的Android設備,對設備的網絡狀態檢測是很有必要的!有很多的App都需要連接網絡。判斷設備是否已經連接網絡,并且在連接網絡的狀態下判斷是wifi無線連接還是GPRS手機網絡連接,這樣就可以在不同的網絡連接下去調用不同的方法,處理不同的事情。這些功能都寫在了下面的代碼中了!請看主要代碼如下:

/** * 檢測網絡是否連接 * @return */ private boolean checkNetworkState() {   boolean flag = false;   //得到網絡連接信息   manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);    //去進行判斷網絡是否連接   if (manager.getActiveNetworkInfo() != null) {     flag = manager.getActiveNetworkInfo().isAvailable();   }   if (!flag) {     setNetwork();   } else {     isNetworkAvailable();   }   return flag;}/*** 網絡未連接時,調用設置方法*/private void setNetwork(){   Toast.makeText(this, "wifi is closed!", Toast.LENGTH_SHORT).show();   AlertDialog.Builder builder = new AlertDialog.Builder(this);   builder.setIcon(R.drawable.ic_launcher);   builder.setTitle("網絡提示信息");   builder.setMessage("網絡不可用,如果繼續,請先設置網絡!");   builder.setPositiveButton("設置", new OnClickListener() {     @Override     public void onClick(DialogInterface dialog, int which) {       Intent intent = null;       /**       * 判斷手機系統的版本!如果API大于10 就是3.0+       * 因為3.0以上的版本的設置和3.0以下的設置不一樣,調用的方法不同       */       if (android.os.Build.VERSION.SDK_INT > 10) {         intent = new Intent(android.provider.Settings.ACTION_WIFI_SETTINGS);       } else {         intent = new Intent();         ComponentName component = new ComponentName(             "com.android.settings",             "com.android.settings.WirelessSettings");         intent.setComponent(component);         intent.setAction("android.intent.action.VIEW");       }       startActivity(intent);     }   });   builder.setNegativeButton("取消", new OnClickListener() {     @Override     public void onClick(DialogInterface dialog, int which) {     }   });   builder.create();   builder.show();}/*** 網絡已經連接,然后去判斷是wifi連接還是GPRS連接* 設置一些自己的邏輯調用*/private void isNetworkAvailable(){   State gprs = manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();  State wifi = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();  if(gprs == State.CONNECTED || gprs == State.CONNECTING){    Toast.makeText(this, "wifi is open! gprs", Toast.LENGTH_SHORT).show();  }  //判斷為wifi狀態下才加載廣告,如果是GPRS手機網絡則不加載!  if(wifi == State.CONNECTED || wifi == State.CONNECTING){    Toast.makeText(this, "wifi is open! wifi", Toast.LENGTH_SHORT).show();    loadAdmob();  }}

希望本文所述對大家Android程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 景东| 信阳市| 武穴市| 阿荣旗| 遂平县| 龙门县| 南和县| 皮山县| 顺平县| 弋阳县| 黄平县| 盐边县| 望谟县| 连州市| 寿阳县| 汽车| 南投市| 贡嘎县| 衡阳县| 淳安县| 建水县| 明水县| 三明市| 金川县| 马公市| 八宿县| 苍梧县| 安国市| 丰台区| 大宁县| 富裕县| 涿鹿县| 白朗县| 呼和浩特市| 庆城县| 长垣县| 兴安县| 安达市| 公主岭市| 东源县| 南京市|