Java 如何从应用程序内禁用/启用移动数据(Android)

Java 如何从应用程序内禁用/启用移动数据(Android),java,android,xml,mobile,Java,Android,Xml,Mobile,我对Android应用程序开发还比较陌生,但我正在尝试创建一个应用程序,在应用程序中点击一个按钮即可切换互联网连接。有什么方法可以做到这一点,因为我还没有在网上找到任何关于如何做到这一点的资源。 我在应用程序清单中包含了所有可能有帮助的用户权限,但似乎无法使其正常工作。谢谢。此代码示例适用于android手机。 对于Android 2.3及以上版本: private void setMobileDataEnabled(Context context, boolean enabled) { fin

我对Android应用程序开发还比较陌生,但我正在尝试创建一个应用程序,在应用程序中点击一个按钮即可切换互联网连接。有什么方法可以做到这一点,因为我还没有在网上找到任何关于如何做到这一点的资源。
我在应用程序清单中包含了所有可能有帮助的用户权限,但似乎无法使其正常工作。谢谢。

此代码示例适用于android手机。 对于Android 2.3及以上版本:

private void setMobileDataEnabled(Context context, boolean enabled) {
final ConnectivityManager conman = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
final Class conmanClass = Class.forName(conman.getClass().getName());
final Field iConnectivityManagerField = conmanClass.getDeclaredField("mService");
iConnectivityManagerField.setAccessible(true);
final Object iConnectivityManager = iConnectivityManagerField.get(conman);
final Class iConnectivityManagerClass = Class.forName(iConnectivityManager.getClass().getName());
final Method setMobileDataEnabledMethod = iConnectivityManagerClass.getDeclaredMethod("setMobileDataEnabled", Boolean.TYPE);
setMobileDataEnabledMethod.setAccessible(true);

setMobileDataEnabledMethod.invoke(iConnectivityManager, enabled);}
还需要以下权限

请遵循下面的URL了解更多说明

编辑:

1:


2:

您能解释一下“在双卡手机上打开移动数据”吗?您能解释一下在双卡手机上打开数据吗?