【发布时间】:2015-09-16 09:34:36
【问题描述】:
我对 Android 应用程序开发还比较陌生,但我正在尝试创建一个应用程序,该应用程序通过单击应用程序内的按钮来切换互联网连接。有什么方法可以真正做到这一点,因为我没有在网上找到任何关于如何做到这一点的资源。 我在应用程序的清单中包含了所有可能有帮助但似乎无法使其工作的用户权限。谢谢。
【问题讨论】:
-
你能解释一下“在双卡手机上打开移动数据吗?”
我对 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);}
还需要以下权限
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
请点击以下网址了解详情。
编辑:
1:Enable/disable data connection in android programmatically
【讨论】: