Android 学习笔记:接收广播开启activity时遇到Exception的问题

在别的安卓机器上调试成功的代码,在另外一台机器上测试的时候,发现收到广播启动activity的时候,会出现
android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
的异常提示。网上搜了一下,发现必须设置Intent标志为FLAG_ACTIVITY_NEW_TASK。我是这样设置的:

 

Intent intentS= new Intent(getApplicationContext(), RunActivity.class);
intentS.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP|Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intentS);

设置之后重新运行,就不会抛出上面的异常了。

本文参考链接:https://willy2016.pixnet.net/blog/post/215860320-android–api-%E7%B4%9A%E5%88%A5%E5%8D%87%E7%B4%9A-28%2C-android-pie-9.0-%E9%81%87%E5%88%B0-error

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

*

code

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据