Android调用系统默认浏览器访问的方法

作者:mrr 时间:2022-04-02 12:14:52 

一、启动android默认浏览器

这样子,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("");
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“这个形式了

有兴趣的可以去试试。

以上内容是小编给大家介绍的Android调用系统默认浏览器访问的方法,希望对大家有所帮助!

标签:android,默认,浏览器
0
投稿

猜你喜欢

  • Android Studio 1.2版安装设置图文教程

    2023-01-05 02:49:10
  • Spring-Bean创建对象的步骤方式详解

    2023-04-12 22:00:47
  • Java实现考试系统

    2023-11-18 04:15:03
  • 两种JAVA实现短网址服务算法

    2023-05-08 12:17:30
  • Java Kafka分区发送及消费实战

    2022-08-17 20:27:58
  • 解决IDEA克隆代码后在右下角没有git分支的问题

    2021-11-23 09:43:19
  • Java多线程 两阶段终止模式Two-Phase Termination Patter

    2023-11-29 04:47:04
  • C#构建树形结构数据(全部构建,查找构建)

    2022-07-22 12:22:52
  • Android实现三角形气泡效果方式汇总

    2021-12-20 06:21:51
  • 关于Spring Boot内存泄露排查的记录

    2023-06-27 18:46:19
  • C# SendInput 模拟鼠标操作的实现方法

    2022-03-15 00:07:25
  • java实现简单登录界面的实战过程

    2022-02-07 20:19:51
  • C# dataset存放多张表的实例

    2022-10-10 14:08:13
  • Java中的synchronized关键字

    2023-07-28 18:39:26
  • Spring的组合注解和元注解原理与用法详解

    2023-12-05 10:25:05
  • C++函数指针和回调函数使用解析

    2022-11-16 21:01:15
  • Spring集成Druid连接池及监控配置的全过程

    2023-08-25 05:22:20
  • Java有哪些操作字符串的类?区别在哪?

    2021-06-02 14:50:54
  • 从Cocos2d-x2迁移到Cocos2d-x3的过程分享

    2021-06-07 23:52:28
  • Java 8新的时间日期库的20个使用示例

    2022-11-06 06:55:00
  • asp之家 软件编程 m.aspxhome.com