Android:指定某浏览器访问指定页面

编程入门 行业动态 更新时间:2024-10-23 01:32:50

在看 Android 面试题的时候看到这样一道题,下面回答是通过直接发送Uri把参数带过去,或者通过manifest里的intentfilter里的data属性,对这个答案不是很理解。

在搜索引擎下面查找,得到的结果内容基本如下:

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

        只要修改以intent.setClassName("com.android.browser","com.android.browser.BrowserActivity");
        中相应的应用程序packagename 和要启动的activity即可启动其他浏览器来
        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"

试了一下 uc浏览器 ,结果闪退…. 想想是接近 15 年的答案,可能是 包名, 或者是主 Activity 名 发生了改变,也就释然了…… 于是找方法怎么查看应用的主 Activity 名,经过了各种搜索技巧,最后解决办法如下


  1. 先下载 Development.apk 工具,安装在手机端(链接:http://pan.baidu/s/1eRNnHx4)
  2. 打开应用程序界面:

  1. 选择要查看的应用程序,点击进入:

  1. 包名到目前已经知道了,当然这不是我们使用这个工具的主要原因,我们使用这个工具主要是获取主 Activity 的名称,包名可以直接在应用商店的网址后缀,或者下载包名查看器查看

向下滑动界面:

截止到目前,我们就找到了对应应用程序(这里是 UC)的主Activity, 也就是入口。那我们就可以实现在安卓中指定浏览器访问指定页面的功能:

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("http://www.baidu"));
intent.setClassName("com.UCMobile","com.UCMobile.main.UCMobile");
startActivity(intent);

在 .setClassName(PackageName, MainActivityName) 中有两个参数,第一个参数时包名,第二个参数时主 Activity 的完整的类名。这样我们就实现了指定浏览器来访问指定的页面。

觉得对你有用的话,顶一下呗 ……

更多推荐

Android:指定某浏览器访问指定页面

本文发布于:2023-06-13 18:41:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1390614.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:浏览器   页面   Android

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!