从app打开浏览器中的本地文件(android 4.3)

时间:2014-01-10 13:26:56

标签: android

我正在开发一个必须在浏览器中打开本地文件的应用。在低于4.3的Android版本中,它可以很好地工作,但在等于或高于4.3的版本中,应用程序总是会崩溃。我认为问题在于Intent.ACTION_VIEW,但我不确定。

我写的代码如下所示。

Intent browserIntent = new Intent(Intent.ACTION_VIEW);
browserIntent.setClassName("com.android.browser", "com.android.browser.BrowserActivity");
browserIntent.setType("text/html");
browserIntent.setData(uri);
startActivity(browserIntent);

所以问题是:如何在Android版本等于或高于4.3的应用程序中打开浏览器中的本地文件。

1 个答案:

答案 0 :(得分:1)

删除setClassName()。您不应该假设设备上安装了哪些浏览器应用程序。重要的是,您要求某个用户选择的应用程序为您处理具有指定数据类型的URI。

要具有额外的弹性,请抓住ActivityNotFoundException,以防无法处理意图的活动(例如,由于受限的用户个人资料)。