Android判斷網絡是否可用,調用系統網絡設置


/**
* 檢查網絡是否可用

* @return true可用,false不可用
*/
public static boolean isNetworkValidate(Context context) {
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
if (cm.getActiveNetworkInfo() != null
&& cm.getActiveNetworkInfo().isConnected()
&& cm.getActiveNetworkInfo().getState() == NetworkInfo.State.CONNECTED) {
return cm.getActiveNetworkInfo().isAvailable();
}
return false;
}


android系統版本不同,調用系統設置網絡的方法也不同

今日在測試android應用,當未檢測到無線網絡時,提示設置網絡對話框,點擊‘設置’,應用自動退出,後臺提示‘android.content.ActivityNotFoundException: Unable to find explicit activity class {com.android.settings/com.android.settings.WirelessSettings}; have you declared this activity in your AndroidManifest.xml?’

 Android4.0.4崩潰    Android2.3.3模擬器可以正常運行的。查了很久,原來發現,android4.0以上的系統設置網絡的方式變化了。


//手機系統版本  大於10 就是3.0或以上版本 
   if(android.os.Build.VERSION.SDK_INT>10){
  intent = new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS);

startActivityForResult( intent , 0);
   }else{
        intent = new Intent();
        ComponentName component = new ComponentName("com.android.settings","com.android.settings.WirelessSettings");
        intent.setComponent(component);
        intent.setAction("android.intent.action.VIEW");

startActivityForResult( intent , 0);
     }


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章