0
可能重複:
How to disable Mobile Data on Android如何在Android中啓用/禁用3G數據服務?
我需要爲Android這需要首先實現3G數據服務的AAP。請讓我知道更改設置值的不同方法,例如。 adb shell命令或可以使用的API /庫。示例鏈接將更有用。
在此先感謝。
可能重複:
How to disable Mobile Data on Android如何在Android中啓用/禁用3G數據服務?
我需要爲Android這需要首先實現3G數據服務的AAP。請讓我知道更改設置值的不同方法,例如。 adb shell命令或可以使用的API /庫。示例鏈接將更有用。
在此先感謝。
由於stackoverflow.com
找到答案:How to disable Mobile Data on Android
Method dataConnSwitchmethod;
Class telephonyManagerClass;
Object ITelephonyStub;
Class ITelephonyClass;
TelephonyManager telephonyManager = (TelephonyManager) context
.getSystemService(Context.TELEPHONY_SERVICE);
if(telephonyManager.getDataState() == TelephonyManager.DATA_CONNECTED){
isEnabled = true;
}else{
isEnabled = false;
}
telephonyManagerClass = Class.forName(telephonyManager.getClass().getName());
Method getITelephonyMethod = telephonyManagerClass.getDeclaredMethod("getITelephony");
getITelephonyMethod.setAccessible(true);
ITelephonyStub = getITelephonyMethod.invoke(telephonyManager);
ITelephonyClass = Class.forName(ITelephonyStub.getClass().getName());
if (isEnabled) {
dataConnSwitchmethod = ITelephonyClass
.getDeclaredMethod("disableDataConnectivity");
} else {
dataConnSwitchmethod = ITelephonyClass
.getDeclaredMethod("enableDataConnectivity");
}
dataConnSwitchmethod.setAccessible(true);
dataConnSwitchmethod.invoke(ITelephonyStub);