【发布时间】:2020-09-21 18:04:12
【问题描述】:
我想通过服务类中的选项打开共享。 它在 Android 7 中运行良好,但在 8+ 操作系统中开始显示
android.util.AndroidRuntimeException:从 Activity 上下文之外调用 startActivity() 需要 FLAG_ACTIVITY_NEW_TASK 标志。这真的是你想要的吗?
我也将此标志包含在我的 Intent 中,但它仍然显示相同的错误。
还有其他方法可以通过服务类中的选项打开共享吗?
Intent i = new Intent(Intent.ACTION_SEND);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
i.putExtra(Intent.EXTRA_STREAM, rasta); //rasta -> Uri obj
i.setType("image/*");
getApplicationContext().startService(Intent.createChooser(i,"Share karna..."));
【问题讨论】:
-
清理并重建您的项目,如果这无助于尝试将该标志添加到清单中,也许您的两个活动都需要该标志?
标签: java android android-intent android-activity service