Android通过Scheme协议打开APP界面

本文详细介绍了URI和URL的概念,强调了URL的组成部分,如协议、主机、路径等,并讲解了Scheme在自定义App启动中的作用。通过实例展示了URL编码与解码的重要性,以及如何通过scheme唤醒App的方法,包括从Web端和另一个App启动。同时,文章还提到了在Android中配置Intent-Filter以响应scheme启动请求的步骤。

转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/123238777
本文出自【赵彦军的博客】

浏览器为什么能唤起App的页面

浏览器为什么能唤起App的页面

URI、URL

  • URI=Uniform Resource Identifier:统一资源标志符,在某一个规则下能把一个资源独一无二的标识出来。比如你的身份证号。
  • URL=Uniform Resource Locator :统一资源定位符,可以提供找到该资源的路径,是URI的子集,是用定位方式实现的URI。

在www上,每一个信息资源都有统一的且在网上唯一的地址,该地址就叫URL,就是指网络地址。

二、URL的组成

URL的一般语法格式为(带方括号[]的为可选项)

protocol://hostname[:port]/path/[;parameters][?query]#fragment
协议://域名:端口号/目录/文件名.文件后缀?参数=值#标志

https://www.testurl.com:8080/path/subpath;parms=test_parms?uid=123&gid=45#fragment=009&fragment

  • protocol 协议,常用的协议是http
  • hostname 主机地址,可以是域名,也可以是IP地址
  • port 端口 http协议默认端口是:80端口,如果不写默认就是:80端口
  • path 路径 网络资源在服务器中的指定路径
  • parameter 参数 如果要向服务器传入参数,在这部分输入
  • query 查询字符串 如果需要从服务器那里查询内容,在这里编辑
  • fragment 片段 网页中可能会分为不同的片段,如果想访问网页后直接到达指定位置,可以在这部分设置

Scheme

英文含义:方案、格式、策略

就是自定义的protocol,非标准,在许多情况下,scheme就是protocol的名称,定义了如何获取资源。

注意点

  • 编码,query要编码,否则使用系统方法直接解析会失败

举例

val url = "taobao://app/path?version=1.0&name=zhaoyanjun&open=true"
val uri = Uri.parse(url)
val scheme = uri.scheme
val host = uri.host
val path = uri.path
val version = uri.getQueryParameter("version")
val name = uri.getQueryParameter("name")
val open = uri.getBooleanQueryParameter("open", false)

Log.d("yu--", "scheme:$scheme")
Log.d("yu--", "host:$host")
Log.d("yu--", "path:$path")
Log.d("yu--", "version:$version name:$name")
Log
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值