Android常用知识点总汇

一、系统上安装了多种浏览器,能否指定某浏览器访问指定页面?请说明原由。

  如果在你的android系统上安装了多种浏览器,能否指定某浏览器访问指定页面?答案当然是:肯定的。

  具体方法如下:

复制代码
Intent intent = new Intent();        

intent.setAction("android.intent.action.VIEW");
Uri content_uri_browsers = Uri.parse("http://isomobile.com");
intent.setData(content_uri_browsers);
intent.setClassName("com.android.browser", "com.android.browser.BrowserActivity");
startActivity(intent);
复制代码

  问题的关键在于我们设置了class name,也就是我们想要跳转的pakcage的activity。如果你想要跳转到其它的浏览器,只需要修改一下这个函数就OK了。

  好,我们现在来让刚刚的思路来指导我们的实践。假如我们现在要直接启动UC浏览器,那么我们该怎么做呢?让我们step by step吧。
  1)下载UC apk:http://i-uc.net/read.php?2
  2)用7zip解压apk文件,得到classes.dex文件
  3)下载反编译dex文件工具:http://nchc.dl.sourceforge.net/project/dedexer/dedexer/1.5/ddx1.5.jarDedexer 项目主页:  http://dedexer.sourceforge.net/
  4)执行命令:java -jar ddx1.5.jar -o -D -d c:\     c:\classes.dex
  5)得到package name是:com.uc.browser,启动的activity是:com.uc.browser.ActivityUpdate(补充:当我在这里选择采用ActivityBrowser的时候发觉权限不够,报permiss denied 异常,而且也不是我们要的那个activity,幸运的是在第二次尝试用ActivityUpdate,刚好能满足要求)
  6)修改上面的代码为intent.setClassName("com.uc.browser","com.uc.browser.ActivityUpdate");

原文地址:https://www.cnblogs.com/lvfeilong/p/gdgdr453.html