3

我们可以将谷歌浏览器设置为默认浏览器吗?因为我了解到在 android 4.2 中它们不再是 android 中的通用浏览器,所以他们将其更改为 Google Chrome。就像下面的这段代码一样。

Intent intent= new Intent();        
intent.setAction("android.intent.action.VIEW");    
Uri content_url = Uri.parse("http://www.eltosystem.com");   
intent.setData(content_url);
intent.setClassName("com.android.browser","com.android.browser.BrowserActivity");   
                        startActivity(intent); 

我们是否可以更改代码以将 Google Chrome 设置为默认值?提前致谢。:)

4

1 回答 1

5

不要在意图上设置类名。如果只有一个应用程序处理该 url,则该应用程序将启动。如果有多个应用程序,并且用户尚未选择默认应用程序,则会提示用户。如果用户已经选择了一个,这将启动用户首选的一个。让用户选择他们想要使用的浏览器总是一个好主意。事实证明,Chrome plain 不适合他们的原因有很多。例如,由于特定的残疾,用户可能需要使用特殊的浏览器。

如果您仍想显式启动 Google Chrome,则必须找到其包名称 ( com.android.chrome:-)) 和处理该android.intent.action.VIEW操作的活动。您可以从存储在其 .apk 中的 Google Chrome 清单中找到它。您需要从安装了它的设备中提取它。

但是请注意,即使设备运行的是 JB 4.2,也无法保证设备上会显示 Google Chrome。OEM 可以自由(在一定程度上)自定义设备上安装的软件包列表,因此即使标准 4.2 GMS 映像包含 Chrome,例如三星仍可能决定将其删除。更不用说基于 4.2 AOSP 的设备可能永远不会有 Chrome,因为它不是开源 Android 平台的一部分,用户无法从 Google Play 商店下载它,因为它也不属于 AOSP。(我故意忽略了基于 AOSP 的设备的场景,其中包括 Google Play、Google Maps 和 Chrome,但没有适当的 GMS 许可)

于 2013-01-24T08:41:41.617 回答