我想启动移动网络设置屏幕,以便用户可以启用/禁用 3g 或数据连接。谁能告诉我我需要使用哪个 Intent 来启动 Activity 。 我用过
Intent in = new Intent(android.provider.Settings.ACTION_NETWORK_OPERATOR_SETTINGS )
和
Intent in = new Intent(android.provider.Settings.ACTION_DATA_ROAMING_SETTINGS ).
但是这两个都没有用。
最佳答案
它们不会起作用,因为我认为在 2.3 中修复了一个错误。
见 https://review.source.android.com/#/c/22229/
您可以使用 (for NETWORK_OPERATOR_SETTINGS) 绕过这个
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setClassName("com.android.phone", "com.android.phone.NetworkSetting");
startActivity(intent);
将 NetworkSetting
替换为 DATA_ROAMING_SETTINGS 的 Settings
Error opening mobile network settings menu 中描述了另一种类似的解决方案
更新
我最近对此进行了测试,似乎直到 API 级别 15 仍需要此解决方法。由于 API 级别 16,问题中的 Intent 似乎可以正常工作。
关于android - 以编程方式启动移动网络设置屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6000452/