繁体   English   中英

在不同的“上下文”中启动应用程序

[英]Launch an application in a different “context”

首先,对于问题标题中的“上下文”感到抱歉,我不知道使用哪个词。 我通过单击来自另一个应用程序的URL成功启动了我的应用程序,但是当我启动任务管理器时,我意识到我的应用程序实际上没有加载:调用者应用程序保存活动。 我想如何:

  • 在不同的“上下文”中启动我的应用程序(再次抱歉,这会更好吗?)
  • 能够在已经加载的情况下重新加载我的应用程序(比如重新启动它)。

非常感谢。

您可以通过将AndroidManifest.xml中的launchMode ”属性设置为“ singleTask ”或“ singleInstance ”来修改行为,两者都会导致您的Activity被创建为新任务的根。 但是,如果它已经存在,它不会重新启动Activity,而是应该处理Activity.onNewIntent(Intent intent)回调。

要了解有关launchMode的更多信息,请访问: http//developer.android.com/guide/topics/manifest/activity-element.html#lmode

除了Kai提到的launchMode之外,您可能还需要查看taskAffinityallowTaskReparenting ,具体取决于您的应用程序的结构。

这是一个摘录,似乎与您描述您的应用程序的方式相符:

例如,如果电子邮件包含指向网页的链接,则单击该链接将显示可显示该页面的活动。 该活动由浏览器应用程序定义,但作为电子邮件任务的一部分启动。 如果它被重新定位到浏览器任务,它将在浏览器下一个到达前面时显示,并且在电子邮件任务再次出现时将不再显示。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM