在双卡中禁用数据连接 android
disable data connection in dual sim android
我想禁用数据连接,我正在使用此代码。
ConnectivityManager dataManager;
dataManager = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
try {
dataMtd = ConnectivityManager.class.getDeclaredMethod("setMobileDataEnabled", boolean.class);
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
dataMtd.setAccessible(true);
try {
dataMtd.invoke(dataManager, false);
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
这不适用于双卡。所以有人可以帮助我。
如何禁用双卡 android phone 中的数据连接?
以及如何检查 phone 是否是双 SIM 卡
这里要提一些事情:
- 在 Android 5.1 之前没有正式的 API 双卡功能。因此,似乎没有适用于旧设备的通用解决方案。从 5.1 开始,API 可用。
- 您的代码将不再适用于 Android 5+,正如 in this question
所指出的
- 然而,this answer 为上述两个项目符号提供了解决方案:方法
setMobileNetworkfromLollipop
检查目标是 5 还是 5.1+,如果是 5.1+,它循环遍历所有订阅 ID (= SIM 卡)切换数据服务。您可以将它与您的代码结合起来以也针对以前的版本。缺点:它需要 root 访问权限,双卡功能仅限于 5.1+。
我想禁用数据连接,我正在使用此代码。
ConnectivityManager dataManager;
dataManager = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
try {
dataMtd = ConnectivityManager.class.getDeclaredMethod("setMobileDataEnabled", boolean.class);
} catch (NoSuchMethodException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
dataMtd.setAccessible(true);
try {
dataMtd.invoke(dataManager, false);
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
这不适用于双卡。所以有人可以帮助我。 如何禁用双卡 android phone 中的数据连接? 以及如何检查 phone 是否是双 SIM 卡
这里要提一些事情:
- 在 Android 5.1 之前没有正式的 API 双卡功能。因此,似乎没有适用于旧设备的通用解决方案。从 5.1 开始,API 可用。
- 您的代码将不再适用于 Android 5+,正如 in this question 所指出的
- 然而,this answer 为上述两个项目符号提供了解决方案:方法
setMobileNetworkfromLollipop
检查目标是 5 还是 5.1+,如果是 5.1+,它循环遍历所有订阅 ID (= SIM 卡)切换数据服务。您可以将它与您的代码结合起来以也针对以前的版本。缺点:它需要 root 访问权限,双卡功能仅限于 5.1+。