oppo无法调起默认外部浏览器

在app内调用oppo默认浏览器时,发现url重定向时无法调起, 我是这样做的

Intent intent = Intent.parseUri(url, 0);
startActivity(intent);

测试发现:
1.url换成“http://www.baidu.com”时能正常调起oppo的默认浏览器
2.在oppo手机中设置其他第三方浏览器如UC浏览器、QQ浏览器等为默认浏览器时,均正常调起
3.拷贝带有重定向的url,直接粘贴在oppo默认浏览器的地址栏,可以正常打开
4.使用Intent.createChooser调起选择器时,选择oppo默认浏览器时会打开其他浏览器而非默认
5.仅oppo无法调起,其他手机均正常!!!

当然,仅在测试中发现这种现象,不清楚直接原因是不是由url重定向引起的

注:以上说的默认浏览器都是指oppo手机自带的oppo浏览器

测试手机是oppo R9m,Android版本号5.1,其他版本oppo应该可重现

提供一个测试url=
"http://e.cn.miaozhen.com/r/k=2069565&p=7CPXn&dx=__IPDX__&rt=2&ns=__IP__&ni=__IESID__&v=__LOC__&xa=__ADPLATFORM__&tr=__REQUESTID__&mo=__OS__&m0=__OPENUDID__&m0a=__DUID__&m1=__ANDROIDID1__&m1a=__ANDROIDID__&m2=__IMEI__&m4=__AAID__&m5=__IDFA__&m6=__MAC1__&m6a=__MAC__&vo=3400c408&vr=2&o=http%3A%2F%2Fcnydigital.ferrero-praline.com.cn%2Fenter%3Fmz_ca%3D2069565%26mz_sp%3D7CPXn"

请问是我调起方式不对还是有其他原因

阅读 9.9k
3 个回答
Uri uri = Uri.parse("http://www.google.com");
Intent intent = new Intent(ACTION_VIEW,uri);
startActivity(intent)

我这里一般是这么写,这样会调用浏览器

默认浏览器:
Intent intent = new Intent(ACTION_VIEW, Uri.parse("网址"));
startActivity(intent);
外部浏览器:
Intent intent = new Intent();
intent.setAction("android.intent.action.VIEW");
intent.setData(Uri.parse("链接"));
intent.setClassName("com.android.browser","com.android.browser.BrowserActivity"); startActivity(intent);

几个常见
uc浏览器":"com.uc.browser", "com.uc.browser.ActivityUpdate"
opera:"com.opera.mini.android", "com.opera.mini.android.Browser"
qq浏览器:"com.tencent.mtt", "com.tencent.mtt.MainActivity"

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题