我已声明我的 Activity 的启动模式为 singleTask。如果我 启动我的应用程序,按主页按钮,转到电子邮件客户端 (在本例中为 gmail)并使用我的应用程序预览附件,我 我在 Android 2.3 及更高版本上遇到安全异常, 这表示我没有访问 gmail 的权限 附件。以前的版本不会发生异常&如果我这样做的话 不要使用 singleTask 作为启动模式。
异常发生在这一行-
mContext.getContentResolver().openInputStream(intent.getData());
其中 mContext 是 Activity 上下文。
这是一个已知问题吗?
任何帮助将不胜感激。
谢谢,
阿克谢
最佳答案
我已经在 Android-developers 上发布了这个,并得到了 Dianne Hackborn 的回复-
“抱歉,这可能是 2.3 中的一个错误,试图向已经运行的 Activity 实例授予 URI 权限。我会调查一下。与此同时,唯一的解决方案可能是不对正在启动的 Activity 使用 singleTask 来预览附件。这实际上是首选的做法,因为您的预览 Activity 应该作为其自己的实例作为 gmail 任务的一部分运行。”
关于Android:launchMode ="singleTask"的安全异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5840875/