如果它启动我的活动,如何从活动堆栈中删除浏览器?

时间:2011-12-05 22:19:34

标签: android android-activity android-intent

我们一直在研究如何通过电子邮件消息中的链接启动我们的应用程序,我们有一些非常有效的方法。只有具有http / https方案的URL才能正常工作,因此我们在服务器应用程序中编写了一个小的“重定向器”,它看到我们来自Android浏览器,并使用我们的应用程序启动的方案重定向到URI。所有这些都很有效。

唯一不好的部分是因为浏览器是在点击电子邮件中的链接和由于重定向而弹出的应用程序之间启动的,当用户在使用我们的应用程序后点击后退按钮返回其电子邮件程序时,浏览器显示给用户。浏览器留在空白页面上,用户可能会对此感到困惑,不知道再次按下后退按钮返回他们的电子邮件。

当我们的应用程序从链接启动时,浏览器将处理URL,重定向将导致我们的应用程序像往常一样出现。但是,在我的应用程序中是否有一种方法告诉Android我的应用程序有效地替换了后端堆栈上的浏览器,因此如果按下后退按钮,用户将返回到电子邮件程序,就像浏览器没有弹出一样首先是什么?

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以使用intent filter跳过中间的整个浏览器。您可以注册要侦听的特定架构以及启动应用程序的给定URL。这将直接启动您的应用程序,而不是将浏览器放在中间。 YouTube应用程序使用的方法类似于我确定直接在YouTube应用程序中打开视频。 This这个问题可能会为您指明实现这一目标的方向。