admin管理员组文章数量:1345517
废话不多说先上代码!
/**
* 打开网页
*/
public void OpenWebpage(){
Uri uri = Uri.parse("https://www.baidu/");
final Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setData(uri);
//是否安装浏览器
if (intent.resolveActivity(this.getPackageManager()) != null) {
ComponentName componentName = intent.resolveActivity(this.getPackageManager());
Log.e(TAG, "onConfigurationChanged: "+componentName );
Log.e(TAG, "onConfigurationChanged: "+componentName.getClassName() );
Log.e(TAG, "onConfigurationChanged: "+componentName.getPackageName() );
//下载管理器
// intent.setClassName("com.android.providers.downloads.ui","com.android.providers.downloads.ui.activity.BrowserDownloadActivity");
//设置浏览器
//intent.setClassName(componentName.getPackageName() ,componentName.getClassName());
//android 自带的浏览器
//intent.setClassName("com.android.browser","com.android.browser.BrowserActivity");
//选择浏览器
//startActivity(Intent.createChooser(intent,"请选择浏览器"));
//默认浏览器
startActivity(intent);
} else {
Toast.makeText(this.getApplicationContext(), "请下载浏览器", Toast.LENGTH_SHORT).show();
}
}
总结:
1.下载管理器
com.android.providers.downloads.ui
如果是 “http://xxx/xx/xx.apk” 这样的格式的话,在Android 12.5 小米手机会报一个“该路径不可用” ,也不知道为什么,那怕我使用的是默认浏览器也会调用到下载管理器去。
希望有大神帮忙解答下!
2.使用手机设置的默认浏览器打开网页
intent.setClassName(componentName.getPackageName() ,componentName.getClassName());
startActivity(intent);
可以打开手机设置的默认浏览器,但是在Android12.5如果是打开下载连接的话会跳转的到下载管理器去,而不是打开一个网页。
3.手机默认浏览器
intent.setClassName(“com.android.browser”,“com.android.browser.BrowserActivity”);
startActivity(intent);
这个是指手机默认的浏览器,不管再怎么设置手机默认浏览器都没有用的
4.手动选择浏览器
startActivity(Intent.createChooser(intent,“请选择浏览器”));
startActivity(intent);
最后:手机只有google浏览器没有其他浏览器的情况下,使用下载连接打开网页google浏览器是不会下载的!
版权声明:本文标题:Android 关于打开默认浏览器的那些事儿!!! 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/biancheng/1743813057a2543426.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论