首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能调用onNewIntent

不能调用onNewIntent
EN

Stack Overflow用户
提问于 2013-02-28 02:47:21
回答 1查看 1K关注 0票数 0

我的程序有MainActivity和myService。

MainActivity是'singletop',MainActivity重写onNewIntent类。

myService是‘前台’服务。弹出一个通知。通知中有Intent(this,MainActivity.class)在pendingIntent中启动MainActivity。

我的程序流程是

从图标(开始) MainActivity (startService) myService (send broadcast)广播class(start MainActivity)onNewIntent@MainActivity启动

当像这样启动程序时,onNewIntent就会被准确地调用。

但是当程序从通知中启动时,onNewIntent从未调用过。

从通知(start) MainActivity (startService) myService (send broadcast) broadcast class(start MainActivity)onNewIntent@MainActivity启动

EN

回答 1

Stack Overflow用户

发布于 2013-02-28 05:04:24

来自http://developer.android.com/guide/topics/manifest/activity-element.html的指南

类似地,还可以创建"singleTop“活动的新实例来处理新的意图。但是,如果目标任务的堆栈顶部已经有活动的现有实例,则该实例将接收新的意图(在onNewIntent()调用中);没有创建新实例。在其他情况下--例如,如果"singleTop“活动的现有实例位于目标任务中,而不是在堆栈的顶部,或者如果它位于堆栈的顶部,但不在目标任务中,则将创建一个新实例并将其推送到堆栈上。

因此,只有在堆栈顶部存在活动的现有实例时,才会调用onNewIntent。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15126580

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档