我有一个小部件,可以单击时可以弹出小对话框。这些对话框通过在SingleSinstance Launchmode中称为remoteactitive的活动显示。在其中一个对话框中,有一个按钮可以启动具有标准启动模式的主应用主动脉。

但是,当单击此按钮并调用startActivity()时,没有启动MainActivity,尽管我可以在LogCat中看到相应的“起始活动:intist {...}”。

如果我将requoteactivity的启动模式设置为标准性,那么MainActivity就会启动,但这不是我想要的,RemoteActivity仅仅是小部件的扩展,我不希望它与任何其他活动一起堆叠。

我还尝试了flag_activity_new_task,但这无济于事,无论如何都不需要 根据文档:

另一方面,“单一构成”活动不允许其他活动成为其任务的一部分。这是任务中唯一的活动。如果它开始另一个活动,则该活动将分配给另一个任务 - 好像flag_activity_new_task是有意的。

我如何启动我的主要活动?

UPDATE / ERRATA:

实际启动了主动脉,但前提是它还不是任务的一部分。如果我正常通过启动器发射主动脉,然后按回退出,那么remoteactivity确实会发射主动脉。

但是,如果我不按向后退,而是按HOME留下MainAttivity,那么Remoteactivity仍无法发挥主进性,尽管该意图出现在LogCat中。

我正在Froyo上测试。

对发生的事情有什么想法吗?

有帮助吗?

解决方案 2

我发现问题:这种行为仅在requoteactitive之前呼叫完成()之前呼叫thine()时才发生。如果我在完成()之前调用startActivity(),那么无论是否已经成为现有任务的一部分,它都可以正常工作。

去搞清楚...

其他提示

也许是 无历史标志 您要寻找的东西会工作吗?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top