1# 应用链接说明 2 3## uris标签说明 4当在module.json5文件的skills中声明uris时,主要包含如下字段。 5 6> **说明:** 7> 8> 通过浏览器拉起应用页面时,浏览器会将uri中scheme和host中的大写字母自动转化为小写字母,导致无法正确匹配应用。因此建议scheme和host中不要包含大写字母。 9 10- scheme:协议名称。常见的取值有http、https、file、ftp等,也可以自定义。 11- host:域名或IP地址。例如域名`developer.huawei.com`或IP地址`127.0.0.1`。 12- port:端口号。例如`developer.huawei.com:80`后面的80即为端口号。 13- path:路径,表示域名服务器上的目录或文件路径,该字段在scheme存在时才有意义。例如`developer.huawei.com/consumer/`中`consumer`。 14- pathStartWith:路径前缀,该字段在scheme存在时才有意义,表示域名服务器上的目录或文件路径的前缀,用于前缀匹配。 15- pathRegex:路径正则,该字段在scheme存在时才有意义,表示域名服务器上的目录或文件路径的正则表达式,用于正则匹配。 16- [linkFeature](#linkfeature标签说明):应用的功能类型(如文件打开、分享、导航等)。取值为长度不超过127字节的字符串,不支持中文。 17 18### URL的基本格式 19 20按照配置的字段不同,uris可以拼接为不同的URL表达式。其中,scheme为必选字段,其他字段仅当scheme存在时才有意义。 21 22- 只配置scheme:`scheme://` 23- 只配置scheme和host:`scheme://host` 24- 只配置scheme、host和port:`scheme://host:port` 25- 当配置了path、pathStartWith或pathRegex字段时,组成的表达式如下。 26 三方应用组件配置的scheme不能与系统应用重复,否则会导致无法通过该uri拉起三方应用组件。 27 - **全路径表达式**:`scheme://host:port/path` 28 - **路径前缀表达式**:`scheme://host:port/pathStartWith` 29 - **路径正则表达式**:`scheme://host:port/pathRegex` 30 31> **说明:** 32> - 三方应用组件配置的scheme不能与系统应用重复,否则会导致无法通过该uri拉起三方应用组件。 33> - 如果多个应用的URL配置相同,应用跳转时匹配到同多个应用,则会拉起应用选择框。为了更好的用户体验,开发者可以通过链接的path字段去区分同一域名下的不同应用,如链接`https://www.example.com/path1`拉起目标应用1,链接`https://www.example.com/path2`拉起目标应用2。 34 35 36### linkFeature标签说明 37 38目标应用在linkFeature字段中申明功能类型,并通过应用市场上架审核后,可以提升应用跳转体验。主要用于以下两种场景: 39 401. 支持系统识别同类应用:当调用方拉起垂类应用(例如导航类应用)时,系统会根据linkFeature字段识别到匹配的应用,并在应用面板中展现。 41 42 |值|说明| 43 |---|---| 44 |AppStorageMgmt|指示清理应用沙箱目录中缓存数据的功能| 45 |FileOpen|指示打开处理文件的功能| 46 |Navigation|指示导航功能| 47 |RoutePlan|指示路线规划功能| 48 |PlaceSearch|指示地点搜索功能| 49 502. 跳转一键返回能力:用户从A应用跳转至B应用的某个功能界面后,B应用调用[一键返回能力](../reference/apis-ability-kit/js-apis-inner-application-uiAbilityContext.md#uiabilitycontextbacktocallerabilitywithresult12),可以支持用户直接返回A应用,无问询弹窗。例如:A应用跳转至B应用的支付界面,若B应用已申请了支付的linkfeature,则用户在B应用内完成操作后,可一键返回A应用。 51 52 |值|说明| 53 |---|---| 54 |Login|指示登录、授权登录等功能| 55 |Pay|指示支付页面、收银台等功能| 56 |Share|指示分享功能| 57 58## 配置示例 59 60 61下面以授权登录场景举例说明: 62 63```json 64"uris": [ 65 { 66 "scheme": "https", 67 "host": "developer.huawei.com", 68 "path": "consumer", 69 "linkFeature": "Login" 70 } 71] 72``` 73