鸿蒙OS Uri.Builder
Uri.Builder
java.lang.Object
|---ohos.utils.net.Uri.Builder
& public static final class Uri.Builder
& extends Object
快速构造统一资源标识符 (URI) 对象。
标准 URI 格式如下:
[scheme:]scheme-specific-part[#fragment]
不需要解析不透明的 URI。它也可以是相对 URI。 分层 URI 的标准格式如下:
<div style='display: none'>[scheme:][//authority][path][?query][#fragment]</div>
如果 URI 是服务器类型,则其权限字段可以按以下格式解析:
[user-info@]host[:port]
构造函数摘要
构造函数 | 描述 |
---|---|
Builder() |
方法总结
修饰符和类型 | 方法 | 描述 |
---|---|---|
Uri.Builder | appendDecodedPath(String path) | 将解码后的路径附加到当前分层 URI 中的现有路径。 |
Uri.Builder | appendDecodedQueryParam(String key, String value) | 将解码后的查询附加到当前分层 URI。 |
Uri.Builder | appendEncodedPath(String path) | 将编码路径附加到当前分层 URI 中的现有路径。 |
Uri | build() | 基于当前的 Builder 对象创建一个 Uri 实例。 |
Uri.Builder | clearQuery() | 清除当前分层 URI 的查询字段。 |
Uri.Builder | decodedAuthority(String authority) | 设置当前分层 URI 中权限字段的所有字符进行编码,包括 at 符号 (@) 和冒号 (:)。 |
Uri.Builder | decodedFragment(String fragment) | 设置要编码的当前 URI 中的片段字段的所有字符。 |
Uri.Builder | decodedOpaqueSsp(String opaqueSsp) | 将当前不透明 URI 中的方案特定部分字段设置为被编码但不被解析。 |
Uri.Builder | decodedPath(String path) | 设置要编码的当前分层 URI 中路径字段的斜线 (/) 以外的字符。 |
Uri.Builder | decodedQuery(String query) | 设置当前分层 URI 中查询字段的所有字符进行编码,包括问号 (?) 和等号 (=)。 |
Uri.Builder | encodedAuthority(String authority) | 设置当前分层 URI 的权限字段。 |
Uri.Builder | encodedFragment(String fragment) | 设置当前 URI 的片段字段。 |
Uri.Builder | encodedOpaqueSsp(String opaqueSsp) | 将当前不透明 URI 中的方案特定部分字段设置为不被解析。 |
Uri.Builder | encodedPath(String path) | 设置当前分层 URI 的路径字段。 |
Uri.Builder | encodedQuery(String query) | 设置当前分层 URI 的查询字段。 |
Uri.Builder | scheme(String scheme) | 设置当前 URI 的方案字段。 |
String | toString() | 获取通过 Builder 创建的 Uri 的字符串表示形式。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
构造函数详细信息
Builder
public Builder()
Method Detail
scheme
public Uri.Builder scheme(String scheme)
设置当前 URI 的方案字段。
参数:
参数名称 | 参数描述 |
---|---|
scheme | 指示要设置的方案字段。 |
返回:
返回 Builder 对象。
decodedOpaqueSsp
public Uri.Builder decodedOpaqueSsp(String opaqueSsp)
将当前不透明 URI 中的方案特定部分字段设置为被编码但不被解析。
参数:
参数名称 | 参数描述 |
---|---|
opaqueSsp | 指示要为不透明 URI 设置的解码方案特定部分字段。 |
返回:
返回 Builder 对象。
encodedOpaqueSsp
public Uri.Builder encodedOpaqueSsp(String opaqueSsp)
将当前不透明 URI 中的方案特定部分字段设置为不被解析。
参数:
参数名称 | 参数描述 |
---|---|
opaqueSsp | 指示要为不透明 URI 设置的编码方案特定部分字段。 |
返回:
返回 Builder 对象。
decodedAuthority
public Uri.Builder decodedAuthority(String authority)
设置当前分层 URI 中权限字段的所有字符进行编码,包括 at 符号 (@) 和冒号 (:)。
参数:
参数名称 | 参数描述 |
---|---|
authority | 指示要为分层 URI 设置的解码权限字段。 |
返回:
返回 Builder 对象。
encodedAuthority
public Uri.Builder encodedAuthority(String authority)
设置当前分层 URI 的权限字段。
参数:
参数名称 | 参数描述 |
---|---|
authority | 指示要为分层 URI 设置的编码权限字段。 |
返回:
返回 Builder 对象。
decodedPath
public Uri.Builder decodedPath(String path)
设置要编码的当前分层 URI 中路径字段的斜线 (/) 以外的字符。
参数:
参数名称 | 参数描述 |
---|---|
path | 指示要为分层 URI 设置的解码路径字段。 |
返回:
返回 Builder 对象。
encodedPath
public Uri.Builder encodedPath(String path)
设置当前分层 URI 的路径字段。
参数:
参数名称 | 参数描述 |
---|---|
path | 指示要为分层 URI 设置的编码路径字段。 |
返回:
返回 Builder 对象。
appendDecodedPath
public Uri.Builder appendDecodedPath(String path)
将解码后的路径附加到当前分层 URI 中的现有路径。
如果 URI 中的 path 字段没有设置,这个添加的路径将被作为绝对路径处理。
参数:
参数名称 | 参数描述 |
---|---|
path | 指示要附加到分层 URI 的解码路径。 路径不得以斜杠 (/) 开头。 |
返回:
返回 Builder 对象。
appendEncodedPath
public Uri.Builder appendEncodedPath(String path)
将编码路径附加到当前分层 URI 中的现有路径。
如果 URI 中的 path 字段没有设置,这个添加的路径将被作为绝对路径处理。
参数:
参数名称 | 参数描述 |
---|---|
path | 指示要附加到分层 URI 的编码路径。 路径不得以斜杠 (/) 开头。 |
返回:
返回 Builder 对象。
decodedQuery
public Uri.Builder decodedQuery(String query)
设置当前分层 URI 中查询字段的所有字符进行编码,包括问号 (?) 和等号 (=)。
参数:
参数名称 | 参数描述 |
---|---|
query | 指示要为分层 URI 设置的解码查询字段。 |
返回:
返回 Builder 对象。
encodedQuery
public Uri.Builder encodedQuery(String query)
设置当前分层 URI 的查询字段。
参数:
参数名称 | 参数描述 |
---|---|
query | 指示要为分层 URI 设置的编码查询字段。 |
返回:
返回 Builder 对象。
appendDecodedQueryParam
public Uri.Builder appendDecodedQueryParam(String key, String value)
将解码后的查询附加到当前分层 URI。
参数:
参数名称 | 参数描述 |
---|---|
key | 指示解码查询的键。 |
value | 指示解码查询的值。 |
返回:
返回 Builder 对象。
clearQuery
public Uri.Builder clearQuery()
清除当前分层 URI 的查询字段。
返回:
返回 Builder 对象。
decodedFragment
public Uri.Builder decodedFragment(String fragment)
设置要编码的当前 URI 中的片段字段的所有字符。
参数:
参数名称 | 参数描述 |
---|---|
fragment | 指示要为 URI 设置的解码片段字段。 |
返回:
返回 Builder 对象。
encodedFragment
public Uri.Builder encodedFragment(String fragment)
设置当前 URI 的片段字段。
参数:
参数名称 | 参数描述 |
---|---|
fragment | 指示要为 URI 设置的编码片段字段。 |
返回:
返回 Builder 对象。
build
public Uri build()
基于当前的 Builder 对象创建一个 Uri 实例。
返回:
如果设置了 opaqueSsp 参数,则返回一个不透明的 URI; 否则返回分层 URI。
Throws:
Throw名称 | Throw描述 |
---|---|
UnsupportedOperationException | 如果 opaqueSsp 不为 null 但 scheme 为 null,则引发此异常。 |
toString
public String toString()
获取通过 Builder 创建的 Uri 的字符串表示形式。
重写:
Object 类中的 toString
返回:
返回通过 Builder 创建的 Uri 的字符串表示形式。