Android 如何调用系统默认浏览器访问

来源:互联网 发布:达内java飞机大战图片 编辑:程序博客网 时间:2024/05/16 12:40

转自:http://hi.baidu.com/519177819/item/853df8228a8c0c182b0f1cbe

一、启动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“这个形式了

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 三年级上期数学应用题 小学三年级时间应用题 小学二年级数学应用题大全 小学三年级数学应用题上册 六年级工程问题应用题 六年级数学比例应用题 六年级数学工程应用题 五年级鸡兔同笼应用题 10以内的加减法应用题 五年级上册小数除法应用题 小学二年级数学应用题上册 小学三年级上册数学应用题 二年级数学除法应用题 小学二年级除法应用题 二年级下册奥数应用题 七年级数学方程应用题 五年级数学方程应用题 小学数学四年级应用题 小学四年级上册数学应用题 六年级数学方程应用题 二年级上学期数学应用题 小学五年级上册应用题 五年级列方程解应用题 六年级数学分数乘法应用题 三年级上学期数学应用题 小学五年级奥数应用题 小学三年级上册应用题 小学生六年级数学应用题 小学六年级分数乘法应用题 小学六年级上册数学应用题 八年级上册物理应用题 小学二年级数学加减法应用题 应多音字 应组词多音 应多音字组词语组词 应组词多音字 多音字应分别怎么组词 应字组词多音字组词语 应的多音字组词 应的拼音和组词多音 应的多音字组词两个