浏览器到Android应用程序到浏览器

时间:2016-08-22 14:45:07

标签: android android-intent callback android-browser

我有一个通过网页上的意图打开的Android应用程序。这个应用程序做了很少的事情,当它完成后,我想回到另一页上的浏览器。 我可以这样做但它会打开一个新标签,而我想在不打开新标签的情况下更改页面。

这就是我的所作所为:

            Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(callbackUrl));
            startActivity(browserIntent);
            MainActivity.this.finish();

有办法做到这一点吗?

由于

1 个答案:

答案 0 :(得分:0)

我无法找到有关如何在原始浏览器中更改数据的任何信息(并且它似乎不是一个合理的操作),但在此您可以执行以下操作:

  • 在您的网页上生成session_id(user_id / whatever_id)并将其存储在某处(Cookie,本地存储或仅存储在内存中)
  • 启动意图时,将此ID传递给(<a href="my.special.scheme://session_id">
  • 在应用中获取此ID,如here
  • 所述
  • 然后你必须制作一个简单的网络应用程序,它将保存一对:id - URL并在首次获取请求后使其无效
  • 当您想要返回浏览器并重定向发送到上述服务器时此网址(例如myserver.net/store?id=<session_id_here>&url=google.com
  • 然后简单地回去&#39;浏览器
  • 当您的网页重新获得有效时,请询问服务器是否有任何网址(例如myserver.net/get?id=<session_id_here>
  • 获取此网址并转到它(window.location.href = <url>