android之Uri的使用简介\Uri与path相互转换
参考:https://www.cnblogs.com/JLZT1223/p/6805558.html
常用的URI:https://www.cnblogs.com/lyd447113735/p/7805878.html
Android Uri是Google依据Java URI为Android量身打造的,本篇将和大家一起学习Android中的Uri。
Android Uri结构简介:
根据Java中的URI结构可以知道,Android Uri的基本结构是:
[scheme:]scheme-specific-part[#fragment],
这里分为三个部分,scheme、scheme-specific-part、fragment。如果更详细的划分,可以为:
[scheme:][//authority][path][?query][#fragment] 。
其中各部分的规则如下:
- path可以有多个,每个用/连接;
- query参数可以带有对应的值,也可以不带,如果带对应的值用=表示;
- query参数可以有多个,每个用&连接;
- 在android中,除了scheme、authority是必须要有的,其它的几个path、query、fragment,它们每一个可以选择性的要或不要,但顺序不能变。
下面通过一个示例介绍一下Android Uri:
http://www.XXX.com:8080/yourpath/fileName.html?a=10&b=32&c=4#harvic
- scheme:http
- scheme-specific-part:
//www.XXX.com:8080/yourpath/fileName.html?a=10&b=32&c=4#harvic
- fragment:harvic
- authority:
www.XXX.com:8080
- query:
a=10&b=32&c=4#harvic
- path:/yourpath/fileName.html
- host:
www.XXX.com
- port:8080
API简介:
getScheme():获取Uri中的scheme字符串部分;
getSchemeSpecificPart():获取Uri中的scheme-specific-part部分;
getFragment():获取Uri中的Fragment部分;
getAuthority():获取Uri中Authority部分;
getPath():获取Uri中path部分;
getQuery():获取Uri中的query部分;
getHost():获取Authority中的Host字符串;
getPost():获取Authority中的Port字符串;
List< String> getPathSegments():上面我们的getPath()是把path部分整个获取下来,getPathSegments()的作用就是依次提取出Path的各个部分的字符串,以字符串数组的形式输出。
另外,在android.net.Uri中有一个Uri.Builder构造器。
-----------Uri与path的转换-----------
https://www.jianshu.com/p/33bc363290e9
更多相关文章
- Android项目Android Studio目录结构
- Android实现TextView字符串波浪式跳动
- Android 进阶——Android Studio 项目结构详细述及Gradle脚本语
- 原始Android的目标机代码结构
- Android的数据处理:使用annotation实现JSON字符串解析为java对象
- Android 5.1.1 源码目录结构
- Android面试系列2018总结(全方面覆盖Android知识结构)
- sqlite3 表结构查询
- Android Studio基础之项目目录结构(四)-学习篇