一、启动android默认浏览器

/**

* setAction方法设置指定那个浏览器启动:如

* 1. 系统默认浏览器 android.intent.action.VIEW

**/

Intent intent = new Intent();
  intent.setAction("android.intent.action.VIEW");
  Uri content_url = Uri.parse("http://www.cnblogs.com");
  intent.setData(content_url);
  startActivity(intent);

二、指定相应的浏览器访问

1、指定android自带的浏览器访问
  (“com.android.browser”:packagename;“com.android.browser.BrowserActivity”:启动主activity)

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

2、启动其他浏览器(当然该浏览器必须安装在机器上)
  只要修改以下相应的packagename 和 主启动activity即可调用其他浏览器

  intent.setClassName("com.android.browser","com.android.browser.BrowserActivity");

  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"

三、打开本地html文件
 

 打开本地的html文件的时候,一定要指定某个浏览器,而不能采用方式一来浏览,具体示例代码如下

  Intent intent = new Intent();
  intent.setAction("android.intent.action.VIEW");
  Uri content_url = Uri.parse("content://com.android.htmlfileprovider/sdcard/help.html");
  intent.setData(content_url);
  intent.setClassName("com.android.browser","com.android.browser.BrowserActivity");
  startActivity(intent);

  关键点是调用了”content“这个filter。
  以前有在win32编程的朋友,可能会觉得用这种形式”file://sccard/help.html“是否可以,可以很肯定的跟你说,默认的浏览器设置是没有对”file“这个进行解析的,如果要让你的默认android浏览器有这个功能需要自己到android源码修改manifest.xml 文件,然后自己编译浏览器代码生成相应的apk包来重新在机器上安装。

大体的步骤如下:

 

 1、打开 packages/apps/Browser/AndroidManifest.xml文件把加到相应的<intent-filter>后面就可以了
  <intent-filter>
   <action android:name="android.intent.action.VIEW" />
   <category android:name="android.intent.category.DEFAULT" />
   <category android:name="android.intent.category.BROWSABLE" />
   <data android:scheme="file" />
   </intent-filter>

2、重新编译打包,安装,这样子,新的浏览器就支持”file“这个形式了。

更多相关文章

  1. Android(安卓)Service
  2. Android(安卓)安装路径问题 -- 导致无法启动模拟器
  3. 列出手机中所有的App,点击启动
  4. Android《内嵌浏览器-WebView》
  5. FregServer进程,启动Binder线程池,睡眠等待在proc->wait
  6. Android:TextSwitcher、imageSwitcher
  7. 深入浅出Android之学习笔记
  8. android- activity,Application,activity渲染xml文件
  9. Android应用程序(activity)启动过程(一)

随机推荐

  1. k8s交付服务总结
  2. Android(安卓)蓝牙开发:第一日
  3. TFTP不能传输大于32MB的文件?
  4. 年轻人不讲武德,竟用Python让马老师表演闪
  5. 赛博朋克这么火,如果与Python结合,能有多酷
  6. [转]Android(安卓)设计思想
  7. 再见,可视化!你好,Pandas!
  8. 2021来了,用Python换一张头像到新年!
  9. Citrix相关问题
  10. JVM性能调优实战:让你的IntelliJ Idea纵享