日常記錄(1)——Android移動資料開關方法
阿新 • • 發佈:2019-07-29
參考連結:
https://blog.csdn.net/mp624183768/article/details/72900064 跳轉移動資料設定介面的方法這裡看來的
https://blog.csdn.net/llj0201/article/details/539918619 可以參考一下反射的具體寫法
https://www.cnblogs.com/genggeng/p/7306566.html 網路連線型別判斷可以參看這裡
(連結搬運工線上搬運)
簡單總結一下,5.0前後要用不同的反射的方法(具體參看上面連結,我就不cv了),但是5.0之後的要有系統許可權,所以我實際使用的時候選擇了跳設定頁
public int getStat() { int stat = APN_OFF; try{ NetworkInfo mobileInfo = manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE); boolean connect = mobileInfo.isConnected(); if(connect){ stat = APN_ON; }else{ stat = APN_OFF; } }catch(Exception e){ e.printStackTrace(); } return stat; }
public void setStat(int stat) { if (Build.VERSION.SDK_INT <= 19) { ConnectivityManager connectivitymanager = (ConnectivityManager) getContext() .getSystemService(Context.CONNECTIVITY_SERVICE); if (connectivitymanager != null) { try { Class<? extends ConnectivityManager> connectClass = connectivitymanager.getClass(); Method method = connectClass.getMethod("setMobileDataEnabled", Boolean.TYPE); method.invoke(connectivitymanager, stat == APN_ON); } catch (Exception e) { e.printStackTrace(); } } } else { LauncherApplication.getContext().startActivity(new Intent(Settings.ACTION_DATA_ROAMING_S