首先需要明确一点基础概念

点我启动应用程序

在 AndroidManifest.xml 中对被启动的 Activity 进行配置

接着写出 Html 文件 Just.xml

启动 APP

无法启动

启动 APP1

启动 APP2

启动 APP3

启动 APP4

启动 APP5

在浏览器中打开 Html 文件,点击标签,就可以进行测试了

这里需要注意:

多个intent-filter是平级关系,如果嵌套在一起,会出现桌面没有 App 图标的情况

注意data标签中的scheme标签文本是不支持大写的

注意data标签中的host标签的使用

注意上边两个data标签不能放在一个intent-filter 中

在 Activity 中通过 intent 来获取数据

private HashMap browserMap = new HashMap<>();// 浏览器数据

/**

* 从浏览器获取数据[方法一]

*/

private void getParameterFromBrowser() {

Intent intent = getIntent();

Uri data = intent.getData();

if (data == null) return;

browserMap.put("scheme", data.getScheme());

browserMap.put("host", data.getHost());

Set queryParameterNames = data.getQueryParameterNames();

String[] queryParamNameArray = (String[]) queryParameterNames.toArray();

for (int i = 0; i < queryParamNameArray.length; i++) {

String key = queryParamNameArray[i];

browserMap.put(key, data.getQueryParameter(key));

}

}

在 Activity 中通过 intent 来获取数据

/**

* 从浏览器获取数据[方法二]

*/

private void getDataFromBrowser() {

Intent intent = getIntent();

String uri = intent.getDataString();

if (uri != null) {

String scheme = intent.getScheme();

String leave = uri.split(scheme + "://")[1];

String query;

if (leave.contains("?")) {

query = leave.split("\\?")[1];

} else {

query = leave;

}

browserMap = new HashMap();

String[] split = query.split("&");

for (int i = 0; i < split.length; i++) {

String key = split[i].split("=")[0];

String value = split[i].split("=")[1];

browserMap.put(key, value);

}

browserMap.toString();

}

}

注意: 这种方式是直接对从 xml 中获取到的启动字符串进行拆分截取从而获取到想要的数据,如果该串中包含了一个 url 的参数需要进行 URL 编码 否则解析会出现异常。

android程序内置浏览器,Android 应用程序与浏览器相关推荐

  1. Android 使用内置的Camera应用程序捕获图像

    本Demo的实现效果是调用手机上已安装的照相机来实现拍照的功能,拍好的照片以ImageView形式展示. 目的:学习手机调用安装的相机照相,对大的图片处理有所认识,这里主要用到BitmapFactor ...

  2. android studio内置终端,Android Studio Terminal xx不是内部或者外部命令

    背景 在使用AS工具自带命令面板Terminal的时候,相信你有碰到过:xx不是内部或者外部命令,也不是可运行程序.解决办法就是配置环境变量 一.在 Terminal 中使用 adb,报 'adb' ...

  3. 实现base64格式的amr音频文件在IOS、android微信内置浏览器的播放

    参考文档: 1.https://github.com/yxl/opencore-amr-js   (将amr文件转为wav格式的编解码项目) 因为项目需要,要将amr的base46格式的音频文件在IO ...

  4. Android获取内置sdcard跟外置sdcard路径

    Android获取内置sdcard跟外置sdcard路径.(测试过两个手机,亲测可用) 1.先得到外置sdcard路径,这个接口是系统提供的标准接口. 2.得到上一级文件夹目录 3.得到该目录的所有文 ...

  5. android 获取sdcard 禁用sdcard,Android获取内置sdcard跟外置sdcard路径

    Android获取内置sdcard跟外置sdcard路径 Android获取内置sdcard跟外置sdcard路径.(测试过两个手机,亲测可用) 1.先得到外置sdcard路径,这个接口是系统提供的标 ...

  6. 配置Android Studio内置jre的环境变量

    下载Android Studio时,包括jre.将这个jre配置过环境变量后,就可以在全局使用了.但是和官网安装jre的环境配置略有不同. 图一  jre官网下载,安装后的目录 图二  Android ...

  7. 微信小程序判断服务器返回值,让微信小程序内置函数返回promise的方法

    Promise API const promisic = function (func) { return function (params = {}) { return new Promise((r ...

  8. 如何将小程序内置非promise API转换为promise对象(风袖小程序的学习)

    非常重要,便于项目大局观,使用es7的 async和await 如何将小程序内置非promise API转换为promise 这里是我封装的一个wx.request函数如何将wx.request转换成 ...

  9. 【疯狂诗词大会小程序2.0】功能模块+前端+诗词答题小程序+内置数千道题目+开箱即用

    源码简介与安装说明: 模块介绍: 诗词答题小程序,支持单项选择题.文字线索题.看图猜诗词.读诗句猜谜等题目类型. 内置数千道题目,开箱即用.随机出题,先易后难. 诗词同步学,每一道诗题都配备了优质的诗 ...

  10. 坐标正反算(含高程),把要素内置化(无需改程序文件,即可更换路线,同时存两条线要素

    tuzhyu 功能: 坐标正反算(含高程),把要素内置化(无需改程序文件,即可更换路线,同时存两条线要素) 另含两个边仰(一个横向坡,一个纵向坡)坡放样模块. 帮助文件未完成 程序浏览: FileNa ...

最新文章

  1. MacOS 安装monkey教程
  2. WINDOWS2003域控制器禁止U盘
  3. 人脸识别入侵生活,但“刷脸”背后你的信息安全吗?
  4. 后台系统可扩展性学习笔记(十四)异步机制与MQ
  5. SQL Server【一】简介和基本概念和命令
  6. 高度平衡二叉树的构建_数据结构与算法系列(十六)平衡二叉树的构建实现过程演示...
  7. 从字符串数组中寻找数字的元素
  8. 【产品对比】Word开发工具Aspose.Words和Spire.Doc性能和优劣对比一览
  9. pythonindexerror_Python index错误值不在list…on.index(value)
  10. 解决”java.lang.UnsatisfiedLinkError: Native Library .dll already loaded in another classloader”的问题
  11. 阿里云容器Kubernetes监控(五) - 离线存储与归档Kubernetes事件
  12. [路由器] k2p支持ipv6相关设置
  13. 中科院计算机和理论物理双硕士白,中科院研究生理论物理怎么不学相对论?
  14. RAID Introduction
  15. pads图标logo库制作方法
  16. VMware ESXi 7.0 U3e SLIC 2.6 Unlocker 集成 Intel NUC 网卡、USB 网卡和 NVMe 驱动 (2022.07 更新)
  17. ORA-1652: unable to extend temp segment by 128 in tablespace TEMP
  18. 如何将多张图片转换为pdf格式
  19. 纯CSS制作加div制作动画版哆啦A梦
  20. 腾讯AI开放平台使用尝试:账号开通/应用创建/能力开通

热门文章

  1. django-xadmin隐藏菜单不显示
  2. Oracle的常用修改表及字段的语句
  3. 个人作业-2016.12.2
  4. js constructor 和 instanceof
  5. Unity3d 枚举某个目录下所有资源
  6. easyui小清新俺也晒晒 视频管理软件bs项目
  7. web developer tips (71): 关于FastCGI 1.5beta几个新配置设置
  8. [转]java面试笔试题大汇总 ~很全面
  9. 移动通信3G技术概述
  10. 课程设计旅游景点咨询系统