一、启动android默认浏览器

  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);

  这样子,android就可以调用起手机默认的浏览器访问。

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

  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默认时区、语言设置
  2. Android(安卓)中使用自定义字体的方法
  3. Android(安卓)源码 修改系统默认横屏
  4. Android系统自带的camera默认使用后置摄像头
  5. Android: 系统默认音量
  6. Android(安卓)调用系统浏览器 出现activitynotfoundexception 解
  7. Android(安卓)P 默认壁纸被拉伸
  8. Android(安卓)调用第三方浏览器打开
  9. 手工下载android sdk或者system images等等

随机推荐

  1. golang 为什么没有枚举
  2. golang 怎么做热更新
  3. GOLANG 为什么还有指针
  4. golang 怎么调用c代码
  5. golang 数组存的是什么
  6. golang 怎么设计一个栈
  7. golang 是面向对象的么
  8. golang 怎么拼接字符串
  9. golang 如何读取csv文件
  10. golang有web框架吗