3

我可以通过以下方式使用android浏览器打开我的本地html文件:

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(webPageUri, "text/html");
intent.setClassName("com.android.browser", "com.android.browser.BrowserActivity");
startActivity(intent);

它有效。但我想在默认浏览器中打开我的本地 html 文件而不指定:

intent.setClassName("com.android.browser", "com.android.browser.BrowserActivity");

有没有办法做到这一点?

编辑:

如果我按照您的建议删除 setClassName,它将在 HtmlViewer 中打开(它不是默认浏览器)。如果我这样做:

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(webPageUri);
startActivity(intent);

我得到:ActivityNotFoundException

4

2 回答 2

1

只需使用:

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(webPageUri, "text/html");
startActivity(intent);

这将为用户提供可供选择的已安装浏览器列表。如果只有一个浏览器,则将启动该浏览器。

于 2012-10-19T11:47:36.233 回答
0

只需删除该setClassName()行,您就可以开始了。

如果它是手机中唯一的浏览器,这将启动默认浏览器。如果有多个,用户将不得不选择一个。

于 2012-10-19T11:39:47.347 回答