Android 使用上次访问的url打开浏览器

Android 使用上次访问的url打开浏览器,android,browser,browser-history,Android,Browser,Browser History,这就是我使用给定的URI打开浏览器的方法 Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com/")); startActivity(browserIntent); 是否有一种方法可以使用以前访问过的页面打开浏览器。或者说只需打开浏览器,即可显示上次查看的页面 目的: 在应用程序中,用户被要求提交一个URL,因此它没有键入,而是有一个选项打开浏览器,以便他/她可以复制URL,

这就是我使用给定的URI打开浏览器的方法

Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com/"));
startActivity(browserIntent);
是否有一种方法可以使用以前访问过的页面打开浏览器。或者说只需打开浏览器,即可显示上次查看的页面

目的:

在应用程序中,用户被要求提交一个URL,因此它没有键入,而是有一个选项打开浏览器,以便他/她可以复制URL,然后返回并提交。最后一个URL很可能就是他/她想要提交的URL

编辑:

我可以使用从浏览器历史记录中获取上次访问的页面

<uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS" />

但在安装应用程序时,它说:

此应用程序将读取您的浏览器历史记录

一看到就没人安装


任何更改浏览器设置的方法,例如,打开继续我离开的位置

如果要提交URL,最简单的解决方案是能够将URL从浏览器共享到应用程序。浏览器有一个共享按钮


如果您有正确的意图过滤器,您的应用程序将显示在该列表中。

我相信您正在开发此应用程序,以便您知道何时启动打开web浏览器的意图。只需将该URL保存为共享首选项变量中的字符串,并在每次打开新URL时将其值替换为新打开的URL

这样,您将始终在共享pref变量中拥有最后一个URL地址。现在,无论何时您需要它,只要从共享首选项中获取它即可

您可以在此处找到有关共享首选项的更多详细信息:


我认为它可以一直打开
www.google.com
。如果您的用户即将插入一个刚刚剪贴的链接,他几乎不想离开当前打开的选项卡。因此,他必须创建一个新选项卡并插入链接。现在,如果你已经打开了这个新标签页,并服务于
www.google.com
,该怎么办如果你保持原样,他可以少走一步。

以下是代码:

// create an intent to describe what app you wanna open
Intent browserIntent = new Intent("android.intent.action.VIEW", Uri.parse("http://"));

// and then get the default package name and start this app by yourself with a flag which allow it restore from history
ResolveInfo resolveInfo = getPackageManager().resolveActivity(browserIntent,PackageManager.MATCH_DEFAULT_ONLY);
Intent startIntent = getPackageManager().getLaunchIntentForPackage(resolveInfo.activityInfo.packageName);
startIntent.addFlags(Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY);
startActivity(startIntent);
此代码可能有助于:

Intent browserIntent = getPackageManager().getLaunchIntentForPackage("com.android.chrome");
startActivity(browserIntent);

如果用户没有chrome浏览器,则您可以获取默认浏览器的软件包名称并打开该意图。

是否使用webview显示url…此答案可能会有所帮助:@Tomik我不想在清单中添加任何新权限。而且我不想要任何历史。我只想打开浏览器(不是用一些url):)我不知道,你是否可以像那样在最后一个url打开浏览器。但您可以尝试从历史记录中获取最后一个url,然后将上面的意图用于该url。实际上,我的应用程序与浏览器无关。假设你想在我的应用程序中提交一个facebook个人资料页面作为评论。我只是希望它是用户友好的,如果可能的话避免键入eohh,那么在这种情况下,您可以在一个简单的sqlite数据库中维护自己的浏览器历史记录,并在任何地方使用它。可能在autocompleteBox或任何其他视图中。我的应用程序实际上与浏览器无关。假设你想在我的应用程序中提交一个facebook个人资料页面作为评论。我只是希望它是用户友好的,尽可能避免打字。我不希望用户使用我的应用程序或类似的东西共享url是的,目前我正在使用
www.google.com
,但最好(并非总是很难)打开浏览器,查看最后访问的页面。比如更改浏览器设置以记住我离开的位置,或者要求用户打开它。我在手机上运行了它,它的性能和您想要的一样