3

我正在构建一个使用自定义内容提供程序来提供 HTML 页面的应用程序(就好像它是一个 Web 服务器,但从数据源提供服务)。从一个活动中,我想使用 content:// 方案将用户发送到一个页面,但我想使用处理可浏览 URI 的默认应用程序(而不仅仅是 android 浏览器,以适应不同的默认浏览器用户)。

根据https://stackoverflow.com/a/10532319/1524800给出的答案(我的实现基本相同),我可以显式打开默认的 android 浏览器,但我更愿意使用用户的默认浏览器使用隐含的意图。

这甚至可能吗?

4

1 回答 1

2

这样做而不是这样做

Uri uri = Uri.fromFile(file);
Intent browserIntent = new Intent(Intent.ACTION_VIEW);
browserIntent.setClassName("com.android.browser", "com.android.browser.BrowserActivity");
browserIntent.setData(uri);
startActivity(browserIntent);

尝试这个

final Intent browserIntent = new Intent(Intent.ACTION_VIEW);
browserIntent.setDataAndType(Uri.fromFile(file), "text/html");
startActivity(Intent.createChooser(browserIntent, "Open with..."));
于 2012-07-13T23:36:46.510 回答