解决在非Activity中使用startActivity
讓用戶播放音樂30秒后,彈窗提示登陸。這就要求不管在哪個界面都可以顯示彈窗。彈窗實現了(在service里實現而不是在activity里實現,這里不詳說)。但是在點擊跳轉的時候出現了錯誤。在網上找到了解決辦法。錯誤和我是一樣的。
以下是原文:
錯誤提示信息:
? ? ? ??Caused by:?Android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity? context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
原因:
? ? ?activity繼承了context重載了startActivity方法,如果使用acitvity中的startActivity,不會有任何限制。
? ? ?而如果直接使用context的startActivity則會報上面的錯誤,根據錯誤提示信息,可以得知,如果要使用這種方式需要打開新的TASK。
故,解決方法:
? ?intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);?
? context.startActivity(intent);
轉載自:http://blog.csdn.net/scwhy/article/details/6650712
總結
以上是生活随笔為你收集整理的解决在非Activity中使用startActivity的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 图灵在计算机科学方面的主要有什么贡献
- 下一篇: 玻璃体重秤底下怎么拆(玻璃行业可信专业网