1# Application Link Description 2 3## Description of uris 4**uris** declared in **skills** of the **module.json5** file contains the following fields. 5 6> **NOTE** 7> 8> - When an application page is opened using a browser, the browser automatically converts uppercase letters in **scheme** and **host** in **uris** to lowercase letters, causing a failure to match the application. Therefore, it is recommended that **scheme** and **host** do not contain uppercase letters. 9> - Do not add slashes (/) before and after the values of **path**, **pathStartWith**, and **pathRegex**. For example, for the application link **https://developer.huawei.com/consumer/en/support**, set **path** to **consumer/en/support**. 10 11- **scheme**: scheme name, for example, **http**, **https**, **file**, and **ftp**. Custom values are also supported. 12- **host**: domain name or IP address, for example, developer.huawei.com or 127.0.0.1. 13- **port**: port number, for example, 80 in developer.huawei.com:80. 14- **path**: directory or file path on the DNS, The **path** field does not support wildcards. If wildcards are required, use **pathRegex**. 15- **pathStartWith**: prefix of the directory or file path on the DNS. It is used for prefix matching. 16- **pathRegex**: regular expression of the directory or file path on the DNS. It is used for regular expression matching. 17- [linkFeature](#description-of-linkfeature): application's function type (such as file opening, sharing, and navigation). The value is a string with a maximum of 127 bytes. 18 19### Basic URL Format 20 21URIs can be expressed in different formats based on the available fields. Among them, **scheme** is mandatory. Other fields are valid only when **scheme** is configured. 22 23- Only **scheme** is configured: **scheme://** 24- The combination of **scheme** and **host** is configured: **scheme://host** 25- The combination of **scheme**, **host**, and **port** is configured: **scheme://host:port** 26- When **path**, **pathStartWith**, or **pathRegex** is configured, the formats are as follows. 27 The scheme of a third-party application cannot be the same as that of a system application. Otherwise, the third-party application cannot be started using the URI. 28 - **Full path expression**: scheme://host:port/path 29 - **Prefix expression**: scheme://host:port/pathStartWith 30 - **Regular expression**: scheme://host:port/pathRegex 31 32> **NOTE** 33> - The scheme of a third-party application cannot be the same as that of a system application. Otherwise, the third-party application cannot be started using the URI. 34> - If multiple applications are configured with the same URLs, these applications will be matched during application redirection, and a dialog box will be displayed for uses to select. For better user experience, you can use the **path** field to distinguish the application to start. For example, use **https://www.example.com/path1** to start target application 1 and use **https://www.example.com/path2** to start target application 2. 35 36 37### Description of linkFeature 38 39The use of the **linkFeature** field enables an application to deliver a more user-friendly redirection experience. (The declaration of the **linkFeature** field must be reviewed by the application market before being released.) The use scenarios are as follows: 40 411. Identification of applications of the same type: When the caller starts a vertical application (for example, navigation applications), the system identifies the matched applications based on the **linkFeature** field and displays the applications on the vertical domain panel. 42 43 |Value|Description| 44 |---|---| 45 |AppStorageMgmt|Clears cache data in the application sandbox directory.| 46 |FileOpen|Opens a file.| 47 |Navigation|Provides navigation.| 48 |RoutePlan|Plans a route.| 49 |PlaceSearch|Searches a location.| 50 512. One-touch return: When a user switches from application A to application B, application B calls the [quick return API](../reference/apis-ability-kit/js-apis-inner-application-uiAbilityContext.md#uiabilitycontextbacktocallerabilitywithresult12) to return to application A. For example, if application A is redirected to the payment page of application B and application B has applied for the linkfeature of payment, the user can return to application A at one touch after finishing the payment in application B. 52 53 |Value|Description| 54 |---|---| 55 |Login|Common login and authorized login.| 56 |Pay|Payment and cashier.| 57 |Share|Sharing.| 58 59## Example 60 61 62The following uses the authorized login scenario as an example: 63 64```json 65"uris": [ 66 { 67 "scheme": "https", 68 "host": "developer.huawei.com", 69 "path": "consumer", 70 "linkFeature": "Login" 71 } 72] 73``` 74