Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 打开移动网络设置菜单时出错_Android_Android Intent - Fatal编程技术网

Android 打开移动网络设置菜单时出错

Android 打开移动网络设置菜单时出错,android,android-intent,Android,Android Intent,您好,我想用以下代码打开移动网络设置: 但它给了我这个错误。有什么想法吗 12-10 11:17:34.902: ERROR/AndroidRuntime(623): android.content.ActivityNotFoundException: No Activity found to handle Intent { action=android.settings.DATA_ROAMING_SETTINGS flags=0x4000000 } 谢谢您可以尝试取消本例中可能不需要的标

您好,我想用以下代码打开移动网络设置:



但它给了我这个错误。有什么想法吗

12-10 11:17:34.902: ERROR/AndroidRuntime(623): android.content.ActivityNotFoundException: No Activity found to handle Intent { action=android.settings.DATA_ROAMING_SETTINGS flags=0x4000000 }

谢谢

您可以尝试取消本例中可能不需要的标记活动新任务,看看这是否有帮助

如果这没有帮助,那么:

  • 您正在Android 1.1或更早版本上运行此功能(似乎不太可能)
  • 您正在具有兼容性问题的设备上运行此功能(如果是,请告诉我它是什么设备)
  • 发生了一些非常奇怪的事情
更新

答案似乎是上面的第三颗子弹。文档中有
ACTION\u DATA\u ROAMING\u SETTINGS
,但设置应用程序本身没有相应的


我会在Android 2.3源代码发布后再查看,看看这是否会改变故事。如果没有,我将提交一个bug,因为它是一个文档错误或设置应用程序错误,IMHO。

要使此工作正常,请将您的意图创建更改为以下代码:

Intent intent=new Intent(Settings.ACTION_DATA_ROAMING_SETTINGS);
ComponentName cName = new ComponentName("com.android.phone","com.android.phone.Settings");
intent.setComponent(cName); 

基本上,android清单需要一个组件过滤器。

这与操作网络运营商设置相同,只需添加以下组件:

Intent Intent=新意图(设置、操作、网络、操作员设置)

ComponentName cName=新组件名(“com.android.phone”、“com.android.phone.Settings”)


intent.setComponent(cName)

也对它为什么不起作用感兴趣。尝试在没有标记活动和新任务的情况下,使用通常适用于其他设置屏幕的相同方法。它肯定会在NexusOne上崩溃。真的很奇怪。@Desiderio:请看我上面的更新——设置应用程序似乎不支持此操作。感谢您的澄清。看起来像那种。谢谢你的回答。我在1.5 HTC Magic和2.2 HTC Desire设备上进行了测试。我们如何跟踪这个错误?你会回到这个帖子给我们更新吗?@dackyD:也没有迹象表明它在Android 2.3中得到了尊重,所以我提出了一个问题:这在Android 4.1上已经不起作用了,你知道怎么做吗?为了让Android 4.1能够起作用,我删除了这个组件。。。但我不知道为什么。正如下面的Commonware所指出的,这是Android=(#13368)中的一个bug,这意味着您必须指定组件。我为Android 4.0修复了这个问题,因此不再需要该组件。至于安卓4.1,可能类名改变了——你不能在安卓版本或设备制造商中依赖这些剩余的常量。@buzeeg嘿,你能解释一下吗?你是说像这样的@AmelJose嗨!我是这样做的:
Intent intent=new Intent(Settings.ACTION_DATA_ROAMING_SETTINGS);
ComponentName cName = new ComponentName("com.android.phone","com.android.phone.Settings");
intent.setComponent(cName);