xref: /docs/en/application-dev/tools/bm-tool.md (revision e41f4b71)
1e41f4b71Sopenharmony_ci# Bundle Manager
2e41f4b71Sopenharmony_ci
3e41f4b71Sopenharmony_ci
4e41f4b71Sopenharmony_ciThe Bundle Manager enables you to install, uninstall, update, and query a bundle (application). It provides the bundle debugging capabilities, for example, installing and uninstalling a bundle and querying bundle information.
5e41f4b71Sopenharmony_ci
6e41f4b71Sopenharmony_ci> **NOTE**
7e41f4b71Sopenharmony_ci>
8e41f4b71Sopenharmony_ci> Before using this tool, you must obtain the <!--Del-->[<!--DelEnd-->hdc tool<!--Del-->](../../device-dev/subsystems/subsys-toolchain-hdc-guide.md)<!--DelEnd--> and run the hdc shell command.
9e41f4b71Sopenharmony_ci
10e41f4b71Sopenharmony_ci
11e41f4b71Sopenharmony_ci  **Table 1** bm commands
12e41f4b71Sopenharmony_ci
13e41f4b71Sopenharmony_ci| Name| Description|
14e41f4b71Sopenharmony_ci| -------- | -------- |
15e41f4b71Sopenharmony_ci| help | Displays the commands supported by the Bundle Manager tool.|
16e41f4b71Sopenharmony_ci| install | Installs a bundle.|
17e41f4b71Sopenharmony_ci| uninstall | Uninstalls a bundle.|
18e41f4b71Sopenharmony_ci| dump | Displays bundle information.|
19e41f4b71Sopenharmony_ci| clean | Clears the cache and data of a bundle. This command is available in the root version and is available in the user version with developer mode enabled. It is unavailable in other cases.|
20e41f4b71Sopenharmony_ci| enable | Enables a bundle. A bundle can be used after being enabled. This command is available in the root version but unavailable in the user version.|
21e41f4b71Sopenharmony_ci| disable | Disables a bundle. A bundle cannot be used after being disabled. This command is available in the root version but unavailable in the user version.|
22e41f4b71Sopenharmony_ci| get | Obtains the UDID of a device.|
23e41f4b71Sopenharmony_ci| quickfix | Performs patch-related operations, such as installing or querying a patch.|
24e41f4b71Sopenharmony_ci
25e41f4b71Sopenharmony_ci
26e41f4b71Sopenharmony_ci## Help Command
27e41f4b71Sopenharmony_ci
28e41f4b71Sopenharmony_ci  **Table 2** Help command
29e41f4b71Sopenharmony_ci
30e41f4b71Sopenharmony_ci| Name| Description|
31e41f4b71Sopenharmony_ci| -------- | -------- |
32e41f4b71Sopenharmony_ci| bm help | Used to display the commands supported by the Bundle Manager tool.|
33e41f4b71Sopenharmony_ci
34e41f4b71Sopenharmony_ciExample
35e41f4b71Sopenharmony_ci
36e41f4b71Sopenharmony_ci
37e41f4b71Sopenharmony_ci```bash
38e41f4b71Sopenharmony_ci# Display the help information.
39e41f4b71Sopenharmony_cibm help
40e41f4b71Sopenharmony_ci```
41e41f4b71Sopenharmony_ci
42e41f4b71Sopenharmony_ci
43e41f4b71Sopenharmony_ci## Installation Command
44e41f4b71Sopenharmony_ci
45e41f4b71Sopenharmony_ci```bash
46e41f4b71Sopenharmony_cibm install [-h] [-p path] [-u userId] [-r] [-w waitting-time]
47e41f4b71Sopenharmony_ci```
48e41f4b71Sopenharmony_ci
49e41f4b71Sopenharmony_ci
50e41f4b71Sopenharmony_ci  **Table 3** Installation command parameters
51e41f4b71Sopenharmony_ci
52e41f4b71Sopenharmony_ci| Name| Mandatory| Description|
53e41f4b71Sopenharmony_ci| -------- | -------- | -------- |
54e41f4b71Sopenharmony_ci| -h | No| Used to display the parameters supported by the **install** command. By default, the help information is displayed.|
55e41f4b71Sopenharmony_ci| -p | Yes| Path of the HAP to install. You can specify a path to install one or more HAPs at the same time.|
56e41f4b71Sopenharmony_ci| -u | No| User whose HAP is to be installed. By default, the current user's HAP is installed. If a driver application is to be installed, this parameter is ignored and the HAP will be installed for all users.|
57e41f4b71Sopenharmony_ci| -r | No| Whether to install the HAP in overwrite mode. By default, the HAP is installed in overwrite mode.|
58e41f4b71Sopenharmony_ci| -w | No| Time that the Bundle Manager tool waits before installing the HAP. The minimum waiting time is 180s, and the maximum waiting time is 600s. The default waiting time is 180s.|
59e41f4b71Sopenharmony_ci
60e41f4b71Sopenharmony_ci
61e41f4b71Sopenharmony_ciExample
62e41f4b71Sopenharmony_ci
63e41f4b71Sopenharmony_ci```bash
64e41f4b71Sopenharmony_cibm install -p /data/app/ohosapp.hap -u 100 -w 300s -r
65e41f4b71Sopenharmony_ci// The execution result is as follows:
66e41f4b71Sopenharmony_ciinstall bundle successfully.
67e41f4b71Sopenharmony_ci```
68e41f4b71Sopenharmony_ci
69e41f4b71Sopenharmony_ci
70e41f4b71Sopenharmony_ci## Uninstall Command
71e41f4b71Sopenharmony_ci
72e41f4b71Sopenharmony_ci```bash
73e41f4b71Sopenharmony_cibm uninstall [-h help] [-n bundleName] [-m moduleName] [-u userId] [-k]
74e41f4b71Sopenharmony_ci```
75e41f4b71Sopenharmony_ci
76e41f4b71Sopenharmony_ci
77e41f4b71Sopenharmony_ci  **Table 4** Uninstall command parameters
78e41f4b71Sopenharmony_ci
79e41f4b71Sopenharmony_ci| Name| Mandatory| Description|
80e41f4b71Sopenharmony_ci| -------- | -------- | -------- |
81e41f4b71Sopenharmony_ci| -h | No| Used to display the parameters supported by the **uninstall** command. By default, the help information is displayed.|
82e41f4b71Sopenharmony_ci| -n | Yes| Name of the bundle to uninstall.|
83e41f4b71Sopenharmony_ci| -m | No| Module of the bundle to uninstall. By default, all modules are uninstalled.|
84e41f4b71Sopenharmony_ci| -u | No| User whose bundle is to be uninstalled. By default, the current active user's bundle is uninstalled. If a driver application is to be uninstalled, this parameter is ignored and the bundles of all users are uninstalled.|
85e41f4b71Sopenharmony_ci| -k | No| Whether the application data is retained when the bundle is uninstalled. By default, the application data is deleted along the uninstall.|
86e41f4b71Sopenharmony_ci| -v | No| Version number of the shared bundle. By default, all shared bundles with the specified bundle name are uninstalled.|
87e41f4b71Sopenharmony_ci
88e41f4b71Sopenharmony_ci
89e41f4b71Sopenharmony_ciExample
90e41f4b71Sopenharmony_ci
91e41f4b71Sopenharmony_ci```bash
92e41f4b71Sopenharmony_cibm uninstall -n com.ohos.app -m com.ohos.app.EntryAbility -u 100 -k
93e41f4b71Sopenharmony_ci// The execution result is as follows:
94e41f4b71Sopenharmony_ciuninstall bundle successfully.
95e41f4b71Sopenharmony_ci```
96e41f4b71Sopenharmony_ci
97e41f4b71Sopenharmony_ci
98e41f4b71Sopenharmony_ci## Dump Command
99e41f4b71Sopenharmony_ci
100e41f4b71Sopenharmony_ci```bash
101e41f4b71Sopenharmony_cibm dump [-h help] [-a] [-n bundleName] [-s shortcutInfo] [-u userId] [-d deviceId]
102e41f4b71Sopenharmony_ci```
103e41f4b71Sopenharmony_ci
104e41f4b71Sopenharmony_ci
105e41f4b71Sopenharmony_ciIf **-u** is not specified, the command applies to all users.
106e41f4b71Sopenharmony_ci
107e41f4b71Sopenharmony_ci
108e41f4b71Sopenharmony_ci  **Table 5** Dump command parameters
109e41f4b71Sopenharmony_ci
110e41f4b71Sopenharmony_ci| Name| Mandatory| Description|
111e41f4b71Sopenharmony_ci| -------- | -------- | -------- |
112e41f4b71Sopenharmony_ci| -h | No| Used to display the parameters supported by the **dump** command. By default, the help information is displayed.|
113e41f4b71Sopenharmony_ci| -a | Yes| Used to display all bundles installed in the system.|
114e41f4b71Sopenharmony_ci| -n | Yes| Used to display the details of a bundle.|
115e41f4b71Sopenharmony_ci| -s | Yes| Used to display the shortcut information of a bundle.|
116e41f4b71Sopenharmony_ci| -d | No| Used to display the bundle information on a given device. By default, the bundle information on the current device is queried.|
117e41f4b71Sopenharmony_ci| -u | No| Used to display the bundle information for a given user. By default, the bundle information of the current user is queried.|
118e41f4b71Sopenharmony_ci
119e41f4b71Sopenharmony_ci
120e41f4b71Sopenharmony_ciExample
121e41f4b71Sopenharmony_ci
122e41f4b71Sopenharmony_ci```bash
123e41f4b71Sopenharmony_ci# Display the names of all bundles installed in the system.
124e41f4b71Sopenharmony_cibm dump -a
125e41f4b71Sopenharmony_ci# Display the details of a bundle.
126e41f4b71Sopenharmony_cibm dump -n com.ohos.app -u 100
127e41f4b71Sopenharmony_ci# Display the shortcut information of a bundle.
128e41f4b71Sopenharmony_cibm dump -s -n com.ohos.app -u 100
129e41f4b71Sopenharmony_ci# Display cross-device bundle information.
130e41f4b71Sopenharmony_cibm dump -n com.ohos.app -d xxxxx
131e41f4b71Sopenharmony_ci```
132e41f4b71Sopenharmony_ci
133e41f4b71Sopenharmony_ci
134e41f4b71Sopenharmony_ci## Clean Command
135e41f4b71Sopenharmony_ci
136e41f4b71Sopenharmony_ci```bash
137e41f4b71Sopenharmony_cibm clean [-h] [-c] [-n  bundleName] [-d] [-u userId]
138e41f4b71Sopenharmony_ci```
139e41f4b71Sopenharmony_ci
140e41f4b71Sopenharmony_ci
141e41f4b71Sopenharmony_ciIf **-u** is not specified, the command applies to all active users.
142e41f4b71Sopenharmony_ci
143e41f4b71Sopenharmony_ci
144e41f4b71Sopenharmony_ci  **Table 6** Clean command parameters
145e41f4b71Sopenharmony_ci
146e41f4b71Sopenharmony_ci| Name| Description|
147e41f4b71Sopenharmony_ci| -------- | -------- |
148e41f4b71Sopenharmony_ci| -h | Used to display the parameters supported by the **clean** command.|
149e41f4b71Sopenharmony_ci| -c -n | Used to clear the cache data of a bundle.|
150e41f4b71Sopenharmony_ci| -d -n | Used to clear the data directory of a bundle.|
151e41f4b71Sopenharmony_ci| -u | Used to clear the cache data of a bundle for a given user.|
152e41f4b71Sopenharmony_ci
153e41f4b71Sopenharmony_ci
154e41f4b71Sopenharmony_ciExample
155e41f4b71Sopenharmony_ci
156e41f4b71Sopenharmony_ci```bash
157e41f4b71Sopenharmony_ci# Clear the cache data of a bundle.
158e41f4b71Sopenharmony_cibm clean -c -n com.ohos.app -u 100
159e41f4b71Sopenharmony_ci// The execution result is as follows:
160e41f4b71Sopenharmony_ciclean bundle cache files successfully.
161e41f4b71Sopenharmony_ci# Clear the user data of a bundle.
162e41f4b71Sopenharmony_cibm clean -d -n com.ohos.app -u 100
163e41f4b71Sopenharmony_ci// The execution result is as follows:
164e41f4b71Sopenharmony_ciclean bundle data files successfully.
165e41f4b71Sopenharmony_ci```
166e41f4b71Sopenharmony_ci
167e41f4b71Sopenharmony_ci
168e41f4b71Sopenharmony_ci## Enable Command
169e41f4b71Sopenharmony_ci
170e41f4b71Sopenharmony_ci```bash
171e41f4b71Sopenharmony_cibm enable [-h] [-n bundleName] [-a abilityName] [-u userId]
172e41f4b71Sopenharmony_ci```
173e41f4b71Sopenharmony_ci
174e41f4b71Sopenharmony_ci
175e41f4b71Sopenharmony_ciIf **-u** is not specified, the command applies to all active users.
176e41f4b71Sopenharmony_ci
177e41f4b71Sopenharmony_ci
178e41f4b71Sopenharmony_ci  **Table 7** Enable command parameters
179e41f4b71Sopenharmony_ci
180e41f4b71Sopenharmony_ci| Name| Description|
181e41f4b71Sopenharmony_ci| -------- | -------- |
182e41f4b71Sopenharmony_ci| -h | Used to display the parameters supported by the **enable** command.|
183e41f4b71Sopenharmony_ci| -n | Used to enable a bundle.|
184e41f4b71Sopenharmony_ci| -a | Used to enable an ability with a specified bundle name.|
185e41f4b71Sopenharmony_ci| -u | Used to enable a bundle for a given user.|
186e41f4b71Sopenharmony_ci
187e41f4b71Sopenharmony_ci
188e41f4b71Sopenharmony_ciExample
189e41f4b71Sopenharmony_ci
190e41f4b71Sopenharmony_ci```bash
191e41f4b71Sopenharmony_ci# Enable a bundle.
192e41f4b71Sopenharmony_cibm enable -n com.ohos.app -a com.ohos.app.EntryAbility -u 100
193e41f4b71Sopenharmony_ci// The execution result is as follows:
194e41f4b71Sopenharmony_cienable bundle successfully.
195e41f4b71Sopenharmony_ci```
196e41f4b71Sopenharmony_ci
197e41f4b71Sopenharmony_ci
198e41f4b71Sopenharmony_ci## Disable Command
199e41f4b71Sopenharmony_ci
200e41f4b71Sopenharmony_ci```bash
201e41f4b71Sopenharmony_cibm disable [-h] [-n bundleName] [-a abilityName] [-u userId]
202e41f4b71Sopenharmony_ci```
203e41f4b71Sopenharmony_ci
204e41f4b71Sopenharmony_ci
205e41f4b71Sopenharmony_ciIf **-u** is not specified, the command applies to all active users.
206e41f4b71Sopenharmony_ci
207e41f4b71Sopenharmony_ci
208e41f4b71Sopenharmony_ci  **Table 8** Disabled command parameters
209e41f4b71Sopenharmony_ci
210e41f4b71Sopenharmony_ci| Name| Description|
211e41f4b71Sopenharmony_ci| -------- | -------- |
212e41f4b71Sopenharmony_ci| -h | Used to display the parameters supported by the **disable** command.|
213e41f4b71Sopenharmony_ci| -n | Used to disable a bundle.|
214e41f4b71Sopenharmony_ci| -a | Used to disable an ability with a specified bundle name.|
215e41f4b71Sopenharmony_ci| -u | Used to disable a bundle for a given user.|
216e41f4b71Sopenharmony_ci
217e41f4b71Sopenharmony_ciExample
218e41f4b71Sopenharmony_ci
219e41f4b71Sopenharmony_ci```bash
220e41f4b71Sopenharmony_ci# Disable a bundle.
221e41f4b71Sopenharmony_cibm disable -n com.ohos.app -a com.ohos.app.EntryAbility -u 100
222e41f4b71Sopenharmony_ci// The execution result is as follows:
223e41f4b71Sopenharmony_cidisable bundle successfully.
224e41f4b71Sopenharmony_ci```
225e41f4b71Sopenharmony_ci
226e41f4b71Sopenharmony_ci
227e41f4b71Sopenharmony_ci## Obtaining UDID
228e41f4b71Sopenharmony_ci
229e41f4b71Sopenharmony_ci```bash
230e41f4b71Sopenharmony_cibm get [-h] [-u]
231e41f4b71Sopenharmony_ci```
232e41f4b71Sopenharmony_ci
233e41f4b71Sopenharmony_ci
234e41f4b71Sopenharmony_ci  **Table 9** Parameters used in the command for obtaining the UDID
235e41f4b71Sopenharmony_ci
236e41f4b71Sopenharmony_ci| Name| Description|
237e41f4b71Sopenharmony_ci| -------- | -------- |
238e41f4b71Sopenharmony_ci| -h | Used to display the parameters supported by the **get** command.|
239e41f4b71Sopenharmony_ci| -u | Used to obtain the UDID of a device.|
240e41f4b71Sopenharmony_ci
241e41f4b71Sopenharmony_ci
242e41f4b71Sopenharmony_ciExample
243e41f4b71Sopenharmony_ci
244e41f4b71Sopenharmony_ci```bash
245e41f4b71Sopenharmony_ci# Obtain the UDID of a device.
246e41f4b71Sopenharmony_cibm get -u
247e41f4b71Sopenharmony_ci// The execution result is as follows:
248e41f4b71Sopenharmony_ciudid of current device is :
249e41f4b71Sopenharmony_ci23CADE0C
250e41f4b71Sopenharmony_ci```
251e41f4b71Sopenharmony_ci
252e41f4b71Sopenharmony_ci
253e41f4b71Sopenharmony_ci## Quick Fix
254e41f4b71Sopenharmony_ci
255e41f4b71Sopenharmony_ci```bash
256e41f4b71Sopenharmony_cibm quickfix [-h] [-a -f filePath [-t targetPath] [-d]] [-q -b bundleName] [-r -b bundleName] 
257e41f4b71Sopenharmony_ci```
258e41f4b71Sopenharmony_ci
259e41f4b71Sopenharmony_ci
260e41f4b71Sopenharmony_ci  **Table 10** Parameters used in the command for quick fix
261e41f4b71Sopenharmony_ci
262e41f4b71Sopenharmony_ci| Name| Description|
263e41f4b71Sopenharmony_ci| -------- | -------- |
264e41f4b71Sopenharmony_ci| -h | Used to display the commands supported by **quickfix**.|
265e41f4b71Sopenharmony_ci| -a -f | Used to run the quick fix patch installation command. **file-path** corresponds to the .hqf file. You can pass in one or more .hqf files or the directory where the .hqf file is located.|
266e41f4b71Sopenharmony_ci| -t | Used to specify the installation directory name of the quick fix patch. The patch is not enabled after being installed. The name must be a one-level directory and cannot contain characters such as **..** and **/**. The actual installation directory is the directory under the **patch** directory. For example, if **-t mydir** is specified, the actual installation directory is **patch/mydir**.|
267e41f4b71Sopenharmony_ci| -d | Used to select the debug mode to run the patch installation command.|
268e41f4b71Sopenharmony_ci| -q -b | Used to display the patch information based on the bundle name. **bundleName** indicates the bundle name.|
269e41f4b71Sopenharmony_ci| -r&nbsp;-b | Used to uninstall a patch based on the bundle name. **bundleName** indicates the bundle name. Only the patch that is not enabled yet and for which the installation directory name is specified by **-t** can be uninstalled.|
270e41f4b71Sopenharmony_ci
271e41f4b71Sopenharmony_ci
272e41f4b71Sopenharmony_ciExample
273e41f4b71Sopenharmony_ci
274e41f4b71Sopenharmony_ci```bash
275e41f4b71Sopenharmony_ci# Display patch package information by the bundle name.
276e41f4b71Sopenharmony_cibm quickfix -q -b com.ohos.app
277e41f4b71Sopenharmony_ci// The execution result is as follows:
278e41f4b71Sopenharmony_ci// Information as follows:            
279e41f4b71Sopenharmony_ci// ApplicationQuickFixInfo:           
280e41f4b71Sopenharmony_ci//  bundle name: com.ohos.app 
281e41f4b71Sopenharmony_ci//  bundle version code: xxx     
282e41f4b71Sopenharmony_ci//  bundle version name: xxx       
283e41f4b71Sopenharmony_ci//  patch version code: x            
284e41f4b71Sopenharmony_ci//  patch version name:              
285e41f4b71Sopenharmony_ci//  cpu abi:                          
286e41f4b71Sopenharmony_ci//  native library path:             
287e41f4b71Sopenharmony_ci//  type:                            
288e41f4b71Sopenharmony_ci# Install a quick fix patch:
289e41f4b71Sopenharmony_cibm quickfix -a -f /data/app/
290e41f4b71Sopenharmony_ci// The execution result is as follows:
291e41f4b71Sopenharmony_ciapply quickfix succeed.
292e41f4b71Sopenharmony_ci# Uninstall a quick fix patch:
293e41f4b71Sopenharmony_cibm quickfix -r -b com.ohos.app
294e41f4b71Sopenharmony_ci// The execution result is as follows:
295e41f4b71Sopenharmony_cidelete quick fix successfully
296e41f4b71Sopenharmony_ci```
297e41f4b71Sopenharmony_ci
298e41f4b71Sopenharmony_ci## Commands for Querying the Shared Library
299e41f4b71Sopenharmony_ci
300e41f4b71Sopenharmony_ci```bash
301e41f4b71Sopenharmony_cibm dump-shared [-h help] [-a] [-n bundleName] [-m moudleName]
302e41f4b71Sopenharmony_ci```
303e41f4b71Sopenharmony_ci
304e41f4b71Sopenharmony_ci  **Table 11** Commands for querying the shared library
305e41f4b71Sopenharmony_ci
306e41f4b71Sopenharmony_ci| Name                                            | Description                                  |
307e41f4b71Sopenharmony_ci| ------------------------------------------------ | -------------------------------------- |
308e41f4b71Sopenharmony_ci| bm dump-shared -h                                | Displays the parameters supported by the **dump-shared** command.         |
309e41f4b71Sopenharmony_ci| bm dump-shared -a                                | Displays all shared libraries installed in the system.            |
310e41f4b71Sopenharmony_ci| bm dump-shared -n                                | Displays details about a shared library.          |
311e41f4b71Sopenharmony_ci| bm dump-dependencies -h                          | Displays the parameters supported by the **bm dump-dependencies** command.|
312e41f4b71Sopenharmony_ci| bm dump-dependencies -n bundleName -m moudleName | Displays information about the shared library on which a specified module of an application depends.  |
313e41f4b71Sopenharmony_ci
314e41f4b71Sopenharmony_ciExample
315e41f4b71Sopenharmony_ci
316e41f4b71Sopenharmony_ci```bash
317e41f4b71Sopenharmony_ci# Display the bundle names of all shared libraries installed in the system.
318e41f4b71Sopenharmony_cibm dump-shared -a
319e41f4b71Sopenharmony_ci# Display the details about the specified shared library.
320e41f4b71Sopenharmony_cibm dump-shared -n com.ohos.lib
321e41f4b71Sopenharmony_ci# Display information about the shared library on which a specified module of an application depends.
322e41f4b71Sopenharmony_cibm dump-dependencies -n com.ohos.app -m entry
323e41f4b71Sopenharmony_ci```
324e41f4b71Sopenharmony_ci
325e41f4b71Sopenharmony_ci## Error Codes
326e41f4b71Sopenharmony_ci
327e41f4b71Sopenharmony_ci### 9568320
328e41f4b71Sopenharmony_ci**Error Message**
329e41f4b71Sopenharmony_ci
330e41f4b71Sopenharmony_ciFailed to install bundle, no signature file.
331e41f4b71Sopenharmony_ci![Example](figures/en-us_image_0000001389116960.png)
332e41f4b71Sopenharmony_ci
333e41f4b71Sopenharmony_ci**Symptom**
334e41f4b71Sopenharmony_ci
335e41f4b71Sopenharmony_ciAn unsigned HAP file is installed.
336e41f4b71Sopenharmony_ci
337e41f4b71Sopenharmony_ci**Possible Causes**
338e41f4b71Sopenharmony_ci
339e41f4b71Sopenharmony_ciThe HAP file is not signed.
340e41f4b71Sopenharmony_ci
341e41f4b71Sopenharmony_ci**Solution**
342e41f4b71Sopenharmony_ci
343e41f4b71Sopenharmony_ci- Use automatic signature. After the device is connected, sign the application again.
344e41f4b71Sopenharmony_ci- To use manual signature, follow the instructions provided in [hapsigner Guide](../security/hapsigntool-guidelines.md).
345e41f4b71Sopenharmony_ci  <br></br>
346e41f4b71Sopenharmony_ci
347e41f4b71Sopenharmony_ci### 9568347
348e41f4b71Sopenharmony_ci**Error Message**
349e41f4b71Sopenharmony_ci
350e41f4b71Sopenharmony_ciError: install parse native so failed.
351e41f4b71Sopenharmony_ci
352e41f4b71Sopenharmony_ci**Symptom**
353e41f4b71Sopenharmony_ci
354e41f4b71Sopenharmony_ciWhen you start debugging or running a C++ app/service, the error message "error: install parse native so failed" is displayed during the installation of the HAP.
355e41f4b71Sopenharmony_ci
356e41f4b71Sopenharmony_ci**Possible Causes**
357e41f4b71Sopenharmony_ci
358e41f4b71Sopenharmony_ciThe Application Binary Interface (ABI) supported by the device does not match that configured in the C++ project.
359e41f4b71Sopenharmony_ci
360e41f4b71Sopenharmony_ci**Solution**
361e41f4b71Sopenharmony_ci
362e41f4b71Sopenharmony_ci- Connect the device to DevEco Studio.
363e41f4b71Sopenharmony_ci- Open the command line tool and go to the **toolchains\{*Version*}** directory in the OpenHarmony SDK installation directory.
364e41f4b71Sopenharmony_ci    ```
365e41f4b71Sopenharmony_ci    To check the OpenHarmony SDK installation directory, choose **File** > **Settings** > **SDK**.
366e41f4b71Sopenharmony_ci    ```
367e41f4b71Sopenharmony_ci- Run the following command to obtain the list of ABI types supported by the device, which include one or more of the following: default, armeabi-v7a, armeabi, arm64-v8a, x86, and x86_64.
368e41f4b71Sopenharmony_ci    ```
369e41f4b71Sopenharmony_ci    hdc shell
370e41f4b71Sopenharmony_ci    param get const.product.cpu.abilist
371e41f4b71Sopenharmony_ci    ```
372e41f4b71Sopenharmony_ci- Depending on the obtained list, modify the **abiFilters** settings in the module-level **build-profile.json5** file. The rules are as follows:
373e41f4b71Sopenharmony_ci    * If the list includes only **default**, run the following command to check whether the **lib64** folder exists:
374e41f4b71Sopenharmony_ci      ```
375e41f4b71Sopenharmony_ci      cd /system/
376e41f4b71Sopenharmony_ci      ls
377e41f4b71Sopenharmony_ci      ```
378e41f4b71Sopenharmony_ci      ![Example](figures/en-us_image_0000001609001262.png)
379e41f4b71Sopenharmony_ci      * If the **lib64** folder exists, add the arm64-v8a type to **abiFilters**.
380e41f4b71Sopenharmony_ci      * If the **lib64** folder does not exist, add armeabi, armeabi-v7a, or both types to **abiFilters**.
381e41f4b71Sopenharmony_ci    * If the list includes one or more of the following, add at least one of them to **abiFilters**: armeabi-v7a, armeabi, arm64-v8a, x86, and x86_64.
382e41f4b71Sopenharmony_ci    <br></br>
383e41f4b71Sopenharmony_ci
384e41f4b71Sopenharmony_ci
385e41f4b71Sopenharmony_ci### 9568344
386e41f4b71Sopenharmony_ci**Error Message**
387e41f4b71Sopenharmony_ci
388e41f4b71Sopenharmony_ciError: install parse profile prop check error.
389e41f4b71Sopenharmony_ci![Example](figures/en-us_image_0000001585361412.png)
390e41f4b71Sopenharmony_ci
391e41f4b71Sopenharmony_ci**Symptom**
392e41f4b71Sopenharmony_ci
393e41f4b71Sopenharmony_ciWhen you start debugging or run an application, the error message "error: install parse profile prop check error" is displayed during the installation of the HAP.
394e41f4b71Sopenharmony_ci
395e41f4b71Sopenharmony_ci**Possible Causes**
396e41f4b71Sopenharmony_ci
397e41f4b71Sopenharmony_ciThe application uses the privileges, but the new signature fingerprint is not added to the **install_list_capability.json** file of the device after the signature file of the application is changed.
398e41f4b71Sopenharmony_ci
399e41f4b71Sopenharmony_ci**Solution**
400e41f4b71Sopenharmony_ci
401e41f4b71Sopenharmony_ci1. Obtain the new signature fingerprint.
402e41f4b71Sopenharmony_ci
403e41f4b71Sopenharmony_ci    a. Obtain the storage path of the signature file, which is the value of **profile** in the **signingConfigs** field in the project-level **build-profile.json5** file.
404e41f4b71Sopenharmony_ci
405e41f4b71Sopenharmony_ci    b. Open the signature file (with the file name extension .p7b), search for **development-certificate** in the file, copy **-----BEGIN CERTIFICATE-----**, **-----END CERTIFICATE-----**, and the information between them to a new text file, delete the newline characters, and save the file as a new .cer file.
406e41f4b71Sopenharmony_ci
407e41f4b71Sopenharmony_ci    The format of the new .cer file is shown below. (The file content is an example.)
408e41f4b71Sopenharmony_ci
409e41f4b71Sopenharmony_ci    ![Example](figures/en-us_image_0000001585521364.png)
410e41f4b71Sopenharmony_ci    
411e41f4b71Sopenharmony_ci    c. Use the keytool (available in the **jbr/bin** folder of the DevEco Studio installation directory) to obtain the SHA-256 value of the certificate fingerprint from the .cer file:
412e41f4b71Sopenharmony_ci    
413e41f4b71Sopenharmony_ci      keytool -printcert -file xxx.cer
414e41f4b71Sopenharmony_ci    
415e41f4b71Sopenharmony_ci    d. Remove the colon (:) from the SHA-256 content in the certificate fingerprint. What you get is the signature fingerprint.
416e41f4b71Sopenharmony_ci    
417e41f4b71Sopenharmony_ci    An example SHA-256 value is shown below.
418e41f4b71Sopenharmony_ci    ![Example](figures/en-us_image_0000001635921233.png)
419e41f4b71Sopenharmony_ci    
420e41f4b71Sopenharmony_ci    The signature fingerprint obtained by removing the colon is 5753DDBC1A8EF88A62058A9FC4B6AFAFC1C5D8D1A1B86FB3532739B625F8F3DB.
421e41f4b71Sopenharmony_ci    
422e41f4b71Sopenharmony_ci2. Obtain the **install_list_capability.json** file of the device.
423e41f4b71Sopenharmony_ci
424e41f4b71Sopenharmony_ci    a. Connect the device.
425e41f4b71Sopenharmony_ci
426e41f4b71Sopenharmony_ci    b. Run the following command to view the **install_list_capability.json** file of the device:
427e41f4b71Sopenharmony_ci    ```
428e41f4b71Sopenharmony_ci    find /system -name install_list_capability.json
429e41f4b71Sopenharmony_ci    ```
430e41f4b71Sopenharmony_ci    The **install_list_capability.json** file of the device is stored in the following directory. Find the corresponding configuration file based on the bundle name.
431e41f4b71Sopenharmony_ci    ```
432e41f4b71Sopenharmony_ci    /system/etc/app/install_list_capability.json
433e41f4b71Sopenharmony_ci    ```
434e41f4b71Sopenharmony_ci    c. Run the following command to obtain the **install_list_capability.json** file:
435e41f4b71Sopenharmony_ci    ```
436e41f4b71Sopenharmony_ci    hdc shell mount -o rw,remount /
437e41f4b71Sopenharmony_ci    hdc file recv /system/etc/app/install_list_capability.json
438e41f4b71Sopenharmony_ci    ```
439e41f4b71Sopenharmony_ci
440e41f4b71Sopenharmony_ci3. Add the signature fingerprint obtained to **app_signature** in the **install_list_capability.json** file. Note that the signature fingerprint must be configured under the corresponding bundle name.
441e41f4b71Sopenharmony_ci     ![Example](figures/en-us_image_0000001635641893.png)
442e41f4b71Sopenharmony_ci
443e41f4b71Sopenharmony_ci4. Push the modified **install_list_capability.json** file to the device and restart the device.
444e41f4b71Sopenharmony_ci
445e41f4b71Sopenharmony_ci    ```
446e41f4b71Sopenharmony_ci    hdc shell mount -o rw,remount / 
447e41f4b71Sopenharmony_ci    hdc file send install_list_capability.json /system/etc/app/install_list_capability.json 
448e41f4b71Sopenharmony_ci    hdc shell chmod 644 /system/etc/app/install_list_capability.json 
449e41f4b71Sopenharmony_ci    hdc shell reboot
450e41f4b71Sopenharmony_ci    ```
451e41f4b71Sopenharmony_ci
452e41f4b71Sopenharmony_ci5. Reinstall the application.
453e41f4b71Sopenharmony_ci
454e41f4b71Sopenharmony_ci
455e41f4b71Sopenharmony_ci### 9568305
456e41f4b71Sopenharmony_ci**Error Message**
457e41f4b71Sopenharmony_ci
458e41f4b71Sopenharmony_ciError: dependent module does not exist.
459e41f4b71Sopenharmony_ci![Example](figures/en-us_image_0000001560338986.png)
460e41f4b71Sopenharmony_ci
461e41f4b71Sopenharmony_ci**Symptom**
462e41f4b71Sopenharmony_ci
463e41f4b71Sopenharmony_ciWhen you start debugging or run an application, the error message "error: dependent module does not exist" is displayed during the installation of the HAP.
464e41f4b71Sopenharmony_ci
465e41f4b71Sopenharmony_ci**Possible Causes**
466e41f4b71Sopenharmony_ci
467e41f4b71Sopenharmony_ciThe SharedLibrary module on which the application to be run or debugged depends is not installed.
468e41f4b71Sopenharmony_ci
469e41f4b71Sopenharmony_ci**Solution**
470e41f4b71Sopenharmony_ci
471e41f4b71Sopenharmony_ci- Install the dependent SharedLibrary module. On the **Run/Debug Configurations** page of DevEco Studio, select **Keep Application Data** on the **General** tab page, and click **OK** to save the configuration. Then run or debug the application again.
472e41f4b71Sopenharmony_ci  ![Example](figures/en-us_image_0000001560201786.png)
473e41f4b71Sopenharmony_ci- On the **Run/Debug Configurations** page of DevEco Studio, click the **Deploy Multi Hap** tab, select **Deploy Multi Hap Packages**, select the dependent module SharedLibrary, and click **OK** to save the configuration. Then run or debug the application again.
474e41f4b71Sopenharmony_ci  ![Example](figures/en-us_image_0000001610761941.png)
475e41f4b71Sopenharmony_ci
476e41f4b71Sopenharmony_ci
477e41f4b71Sopenharmony_ci### 9568259
478e41f4b71Sopenharmony_ci**Error Message**
479e41f4b71Sopenharmony_ci
480e41f4b71Sopenharmony_ciError: install parse profile missing prop.<br>
481e41f4b71Sopenharmony_ci![Example](figures/en-us_image_0000001559130596.png)
482e41f4b71Sopenharmony_ci
483e41f4b71Sopenharmony_ci**Symptom**
484e41f4b71Sopenharmony_ci
485e41f4b71Sopenharmony_ciWhen you start debugging or run an application, the error message "error: install parse profile missing prop" is displayed during the installation of the HAP.
486e41f4b71Sopenharmony_ci
487e41f4b71Sopenharmony_ci**Possible Causes**
488e41f4b71Sopenharmony_ci
489e41f4b71Sopenharmony_ciMandatory fields are missing in the **app.json5** and **module.json5** files.
490e41f4b71Sopenharmony_ci
491e41f4b71Sopenharmony_ci**Solution**
492e41f4b71Sopenharmony_ci
493e41f4b71Sopenharmony_ci* Check and add mandatory fields by referring to the [app.json5 file](../quick-start/app-configuration-file.md) and [module.json5 file](../quick-start/module-configuration-file.md).
494e41f4b71Sopenharmony_ci* Determine the missing fields based on the HiLog.
495e41f4b71Sopenharmony_ci
496e41f4b71Sopenharmony_ci    Run the following command to enable disk flushing:
497e41f4b71Sopenharmony_ci    ```
498e41f4b71Sopenharmony_ci    hilog -w start
499e41f4b71Sopenharmony_ci    ```
500e41f4b71Sopenharmony_ci
501e41f4b71Sopenharmony_ci    Disk location: /data/log/hilog
502e41f4b71Sopenharmony_ci
503e41f4b71Sopenharmony_ci    Open the log file and find **profile prop %{public}s is mission**. For example, **profile prop icon is mission** indicates that the **icon** field is missing.
504e41f4b71Sopenharmony_ci
505e41f4b71Sopenharmony_ci
506e41f4b71Sopenharmony_ci### 9568258
507e41f4b71Sopenharmony_ci**Error Message**
508e41f4b71Sopenharmony_ci
509e41f4b71Sopenharmony_ciError: install releaseType target not same.<br>
510e41f4b71Sopenharmony_ci![Example](figures/en-us_image_0000001609976041.png)
511e41f4b71Sopenharmony_ci
512e41f4b71Sopenharmony_ci**Symptom**
513e41f4b71Sopenharmony_ci
514e41f4b71Sopenharmony_ciWhen you start debugging or run an application, the error message "error: install releaseType target not same" is displayed during the installation of the HAP.
515e41f4b71Sopenharmony_ci
516e41f4b71Sopenharmony_ci**Possible Causes**
517e41f4b71Sopenharmony_ci
518e41f4b71Sopenharmony_ciThe value of **releaseType** in the SDK used by the existing HAP is different from that used by the new HAP.
519e41f4b71Sopenharmony_ci
520e41f4b71Sopenharmony_ci**Solution**
521e41f4b71Sopenharmony_ci
522e41f4b71Sopenharmony_ciUninstall the existing HAP on the device, and then install the new HAP.
523e41f4b71Sopenharmony_ci
524e41f4b71Sopenharmony_ci
525e41f4b71Sopenharmony_ci### 9568322
526e41f4b71Sopenharmony_ci**Error Message**
527e41f4b71Sopenharmony_ci
528e41f4b71Sopenharmony_ciError: signature verification failed due to not trusted app source.
529e41f4b71Sopenharmony_ci![Example](figures/en-us_image_0000001585042216.png)
530e41f4b71Sopenharmony_ci
531e41f4b71Sopenharmony_ci**Symptom**
532e41f4b71Sopenharmony_ci
533e41f4b71Sopenharmony_ciWhen you start debugging or run an application, the error message "error: signature verification failed due to not trusted app source" is displayed during the installation of the HAP.
534e41f4b71Sopenharmony_ci
535e41f4b71Sopenharmony_ci**Possible Causes**
536e41f4b71Sopenharmony_ci
537e41f4b71Sopenharmony_ciThe signature does not contain the UDID of the debugging device.
538e41f4b71Sopenharmony_ci
539e41f4b71Sopenharmony_ci**Solution**
540e41f4b71Sopenharmony_ci
541e41f4b71Sopenharmony_ci- Use automatic signature. After the device is connected, sign the application again.
542e41f4b71Sopenharmony_ci- If manual signature is used, add the UDID of the device to the **UnsgnedDebugProfileTemplate.json** file. For details, see [OpenHarmony Application Manual Signature](../security/hapsigntool-guidelines.md).
543e41f4b71Sopenharmony_ci  ```
544e41f4b71Sopenharmony_ci  // Command for obtaining the UDID
545e41f4b71Sopenharmony_ci  hdc shell bm get -u
546e41f4b71Sopenharmony_ci  ```
547e41f4b71Sopenharmony_ci
548e41f4b71Sopenharmony_ci
549e41f4b71Sopenharmony_ci### 9568289
550e41f4b71Sopenharmony_ci**Error Message**
551e41f4b71Sopenharmony_ci
552e41f4b71Sopenharmony_ciError: install failed due to grant request permissions failed.
553e41f4b71Sopenharmony_ci![Example](figures/en-us_image_0000001585201996.png)
554e41f4b71Sopenharmony_ci
555e41f4b71Sopenharmony_ci**Symptom**
556e41f4b71Sopenharmony_ci
557e41f4b71Sopenharmony_ciWhen you start debugging or run an application, the error message "error: install failed due to grant request permissions failed" is displayed during the installation of the HAP.
558e41f4b71Sopenharmony_ci
559e41f4b71Sopenharmony_ci**Possible Causes**
560e41f4b71Sopenharmony_ci
561e41f4b71Sopenharmony_ciThe application uses the default Ability Privilege Level (APL), which is normal, and requires the system_basic or system_core permission.
562e41f4b71Sopenharmony_ci
563e41f4b71Sopenharmony_ci**Solution**
564e41f4b71Sopenharmony_ci
565e41f4b71Sopenharmony_ciChange the API in the **UnsgnedDebugProfileTemplate.json** file to **system_basic** or **system_core**, and sign and pack the application again.
566e41f4b71Sopenharmony_ci
567e41f4b71Sopenharmony_ci
568e41f4b71Sopenharmony_ci### 9568297
569e41f4b71Sopenharmony_ci**Error Message**
570e41f4b71Sopenharmony_ci
571e41f4b71Sopenharmony_ciError: install failed due to older sdk version in the device.
572e41f4b71Sopenharmony_ci![Example](figures/en-us_image_0000001635521909.png)
573e41f4b71Sopenharmony_ci
574e41f4b71Sopenharmony_ci**Symptom**
575e41f4b71Sopenharmony_ci
576e41f4b71Sopenharmony_ciWhen you start debugging or run an application, the error message "error: install failed due to older sdk version in the device" is displayed during the installation of the HAP.
577e41f4b71Sopenharmony_ci
578e41f4b71Sopenharmony_ci**Possible Causes**
579e41f4b71Sopenharmony_ci
580e41f4b71Sopenharmony_ciThe SDK version used for build and packing does not match the device image version.
581e41f4b71Sopenharmony_ci
582e41f4b71Sopenharmony_ci**Solution**
583e41f4b71Sopenharmony_ci
584e41f4b71Sopenharmony_ci* Scenario 1: The device image version is earlier than the SDK version for build and packing. Update the device image version. Run the following command to query the device image version:
585e41f4b71Sopenharmony_ci  ```
586e41f4b71Sopenharmony_ci  hdc shell param get const.ohos.apiversion
587e41f4b71Sopenharmony_ci  ```
588e41f4b71Sopenharmony_ci  If the API version provided by the image is 10 and the SDK version used for application build is also 10, the possible cause is that the image version is too early to be compatible with the SDK verification rules of the new version. In this case, update the image version to the latest version.
589e41f4b71Sopenharmony_ci
590e41f4b71Sopenharmony_ci* Scenario 2: For applications that need to run on OpenHarmony devices, ensure that runtimeOS has been changed to OpenHarmony.
591e41f4b71Sopenharmony_ci
592e41f4b71Sopenharmony_ci
593e41f4b71Sopenharmony_ci### 9568332
594e41f4b71Sopenharmony_ci**Error Message**
595e41f4b71Sopenharmony_ci
596e41f4b71Sopenharmony_ciError: install sign info inconsistent.
597e41f4b71Sopenharmony_ci![Example](figures/en-us_image_0000001635761329.png)
598e41f4b71Sopenharmony_ci
599e41f4b71Sopenharmony_ci**Symptom**
600e41f4b71Sopenharmony_ci
601e41f4b71Sopenharmony_ciWhen you start debugging or run an application, the error message "error: install sign info inconsistent" is displayed during the installation of the HAP.
602e41f4b71Sopenharmony_ci
603e41f4b71Sopenharmony_ci**Possible Causes**
604e41f4b71Sopenharmony_ci
605e41f4b71Sopenharmony_ciThe signature of the application installed on the device is different from that of the new application. **Keep Application Data** is selected in **Edit Configurations** (the app installation is overwritten) and the app is re-signed.
606e41f4b71Sopenharmony_ci
607e41f4b71Sopenharmony_ci**Solution**
608e41f4b71Sopenharmony_ci
609e41f4b71Sopenharmony_ciUninstall the application, or deselect **Keep Application Data**. Then install the new application.
610e41f4b71Sopenharmony_ci
611e41f4b71Sopenharmony_ci
612e41f4b71Sopenharmony_ci### 9568266
613e41f4b71Sopenharmony_ci**Error Message**
614e41f4b71Sopenharmony_ci
615e41f4b71Sopenharmony_ciError: install permission denied.
616e41f4b71Sopenharmony_ci![Example](figures/en-us_image_9568266.png)
617e41f4b71Sopenharmony_ci
618e41f4b71Sopenharmony_ci**Symptom**
619e41f4b71Sopenharmony_ci
620e41f4b71Sopenharmony_ciWhen you run the **hdc install** command to install the HAP file, the error message "code:9568266 error: install permission denied"  is displayed.
621e41f4b71Sopenharmony_ci
622e41f4b71Sopenharmony_ci**Possible Causes**
623e41f4b71Sopenharmony_ci
624e41f4b71Sopenharmony_ciThe **hdc install** command cannot be used to install the enterprise application with the **release** signature.
625e41f4b71Sopenharmony_ci
626e41f4b71Sopenharmony_ci**Solution**
627e41f4b71Sopenharmony_ci
628e41f4b71Sopenharmony_ciRun the **hdc install** command to install and debug the enterprise application with the **debug** signature.
629e41f4b71Sopenharmony_ci
630e41f4b71Sopenharmony_ci
631e41f4b71Sopenharmony_ci### 9568337
632e41f4b71Sopenharmony_ci**Error Message**
633e41f4b71Sopenharmony_ci
634e41f4b71Sopenharmony_ciError: install parse unexpected.
635e41f4b71Sopenharmony_ci
636e41f4b71Sopenharmony_ci**Symptom**
637e41f4b71Sopenharmony_ci
638e41f4b71Sopenharmony_ciWhen an application is pushed to a device, an error message is displayed, indicating that the HAP file fails to be opened.
639e41f4b71Sopenharmony_ci
640e41f4b71Sopenharmony_ci**Possible Causes**
641e41f4b71Sopenharmony_ci
642e41f4b71Sopenharmony_ci* The storage space of the system partition is full. As a result, when you run the **hdc file send** command, files on the device are damaged due to insufficient storage space.
643e41f4b71Sopenharmony_ci
644e41f4b71Sopenharmony_ci* The HAP file is damaged when it is pushed to the device.
645e41f4b71Sopenharmony_ci
646e41f4b71Sopenharmony_ci**Solution**
647e41f4b71Sopenharmony_ci
648e41f4b71Sopenharmony_ci* Check the storage space allocated to the system partition. If the storage space is full, clear the storage space to install the HAP file.
649e41f4b71Sopenharmony_ci  
650e41f4b71Sopenharmony_ci  ```
651e41f4b71Sopenharmony_ci  hdc shell param get const.ohos.apiversion
652e41f4b71Sopenharmony_ci  ```
653e41f4b71Sopenharmony_ci
654e41f4b71Sopenharmony_ci* Check the MD5 values of the local HAP file and the HAP file pushed to the device. If they are different, the HAP is damaged during the push. In this case, push the file again.
655e41f4b71Sopenharmony_ci
656e41f4b71Sopenharmony_ci
657e41f4b71Sopenharmony_ci### 9568316
658e41f4b71Sopenharmony_ci**Error Message**
659e41f4b71Sopenharmony_ci
660e41f4b71Sopenharmony_ciError: apl of required permission in proxy data is too low.
661e41f4b71Sopenharmony_ci
662e41f4b71Sopenharmony_ci**Symptom**
663e41f4b71Sopenharmony_ci
664e41f4b71Sopenharmony_ci**requiredReadPermission** and **requiredWritePermission** of the **proxyData** tag fail to be verified.
665e41f4b71Sopenharmony_ci
666e41f4b71Sopenharmony_ci**Possible Causes**
667e41f4b71Sopenharmony_ci
668e41f4b71Sopenharmony_ciIn the **module.json** file of the application project, **requiredReadPermission** and **requiredWritePermission** of the **proxyData** tag fail to be verified, because they can only be configured when the application has the permission level of **system_basic** or **system_core**.
669e41f4b71Sopenharmony_ci
670e41f4b71Sopenharmony_ci**Solution**
671e41f4b71Sopenharmony_ci
672e41f4b71Sopenharmony_ciCheck whether the **proxyData** tag of the application is specified as required. For details, see <!--RP6-->[proxyData](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/quick-start/module-configuration-file.md#proxydata%E6%A0%87%E7%AD%BE)<!--RP6End-->.
673e41f4b71Sopenharmony_ci
674e41f4b71Sopenharmony_ci
675e41f4b71Sopenharmony_ci### 9568315
676e41f4b71Sopenharmony_ci**Error Message**
677e41f4b71Sopenharmony_ci
678e41f4b71Sopenharmony_ciError: uri in proxy data is wrong.
679e41f4b71Sopenharmony_ci
680e41f4b71Sopenharmony_ci**Symptom**
681e41f4b71Sopenharmony_ci
682e41f4b71Sopenharmony_ci**uri** of the **proxyData** tag fails to be verified.
683e41f4b71Sopenharmony_ci
684e41f4b71Sopenharmony_ci**Possible Causes**
685e41f4b71Sopenharmony_ci
686e41f4b71Sopenharmony_ciIn the **module.json** file of the application project, **uri** of the **proxyData** tag fails to be verified because it's format does not meet the requirement.
687e41f4b71Sopenharmony_ci
688e41f4b71Sopenharmony_ci**Solution**
689e41f4b71Sopenharmony_ci
690e41f4b71Sopenharmony_ciCheck whether the **proxyData** tag of the application is set as required. For details, see <!--RP7-->[proxyData](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/quick-start/module-configuration-file.md#proxydata%E6%A0%87%E7%AD%BE)<!--RP7End-->.
691e41f4b71Sopenharmony_ci
692e41f4b71Sopenharmony_ci
693e41f4b71Sopenharmony_ci### 9568336
694e41f4b71Sopenharmony_ci**Error Message**
695e41f4b71Sopenharmony_ci
696e41f4b71Sopenharmony_ciError: install debug type not same.
697e41f4b71Sopenharmony_ci
698e41f4b71Sopenharmony_ci**Symptom**
699e41f4b71Sopenharmony_ci
700e41f4b71Sopenharmony_ciThe debugging type of the application (the **debug** field in the **app.json** file) is different from that of the installed application.
701e41f4b71Sopenharmony_ci
702e41f4b71Sopenharmony_ci**Possible Causes**
703e41f4b71Sopenharmony_ci
704e41f4b71Sopenharmony_ciYou have installed the application using the **Debug** button of the DevEco studio, and then you run the **hdc install** command to install the HAP file of the application.
705e41f4b71Sopenharmony_ci
706e41f4b71Sopenharmony_ci**Solution**
707e41f4b71Sopenharmony_ci
708e41f4b71Sopenharmony_ciUninstall the existing application and install a new application.
709e41f4b71Sopenharmony_ci
710e41f4b71Sopenharmony_ci### 9568296
711e41f4b71Sopenharmony_ci**Error Message**
712e41f4b71Sopenharmony_ci
713e41f4b71Sopenharmony_ciError: install failed due to error bundle type.
714e41f4b71Sopenharmony_ci
715e41f4b71Sopenharmony_ci**Symptom**   
716e41f4b71Sopenharmony_ci
717e41f4b71Sopenharmony_ciThe installation fails to be installed because the **bundleType** tag is incorrect.
718e41f4b71Sopenharmony_ci
719e41f4b71Sopenharmony_ci**Possible Causes**
720e41f4b71Sopenharmony_ci
721e41f4b71Sopenharmony_ciThe **bundleType** of the application to be installed is different from that of an existing application with the same **bundleName**.
722e41f4b71Sopenharmony_ci
723e41f4b71Sopenharmony_ci**Solution**
724e41f4b71Sopenharmony_ci
725e41f4b71Sopenharmony_ci* Uninstall the existing application and install the application again.
726e41f4b71Sopenharmony_ci
727e41f4b71Sopenharmony_ci* Set the **bundleType** of the application to the same as that of the existing application.
728e41f4b71Sopenharmony_ci
729e41f4b71Sopenharmony_ci
730e41f4b71Sopenharmony_ci### 9568292
731e41f4b71Sopenharmony_ci**Error Message**
732e41f4b71Sopenharmony_ci
733e41f4b71Sopenharmony_ciError: install failed due to zero user can only install singleton app.
734e41f4b71Sopenharmony_ci
735e41f4b71Sopenharmony_ci**Symptom**
736e41f4b71Sopenharmony_ci
737e41f4b71Sopenharmony_ciThe user with **UserID 0** is only allowed to install the application with the **singleton** permission, and the application with the **singleton** permission is only allowed to be installed by the user with **UserID 0**.
738e41f4b71Sopenharmony_ci
739e41f4b71Sopenharmony_ci**Possible Causes**
740e41f4b71Sopenharmony_ci
741e41f4b71Sopenharmony_ciThe **UserID** is not set to **0** for the application with the **singleton** permission.
742e41f4b71Sopenharmony_ci
743e41f4b71Sopenharmony_ci**Solution**
744e41f4b71Sopenharmony_ci
745e41f4b71Sopenharmony_ciIf the application has the **singleton** permission, set the **UserID** to **0** during installation.
746e41f4b71Sopenharmony_ci
747e41f4b71Sopenharmony_ci```
748e41f4b71Sopenharmony_ci// Set the user ID to 0.
749e41f4b71Sopenharmony_cihdc install -p name of the HAP file.hap -u 0
750e41f4b71Sopenharmony_ci```
751e41f4b71Sopenharmony_ci
752e41f4b71Sopenharmony_ci### 9568263
753e41f4b71Sopenharmony_ci**Error Message**
754e41f4b71Sopenharmony_ci
755e41f4b71Sopenharmony_ciError: install version downgrade.
756e41f4b71Sopenharmony_ci
757e41f4b71Sopenharmony_ci**Symptom**
758e41f4b71Sopenharmony_ci
759e41f4b71Sopenharmony_ciThe installation fails because **versionCode** of the application to be installed is earlier than that of the existing application.
760e41f4b71Sopenharmony_ci
761e41f4b71Sopenharmony_ci**Possible Causes**
762e41f4b71Sopenharmony_ci
763e41f4b71Sopenharmony_ciThe **versionCode** of the application to be installed is earlier than that of the existing application.
764e41f4b71Sopenharmony_ci
765e41f4b71Sopenharmony_ci**Solution**
766e41f4b71Sopenharmony_ci
767e41f4b71Sopenharmony_ciUninstall the existing application and install a new application.
768e41f4b71Sopenharmony_ci
769e41f4b71Sopenharmony_ci
770e41f4b71Sopenharmony_ci### 9568304
771e41f4b71Sopenharmony_ci**Error Message**
772e41f4b71Sopenharmony_ci
773e41f4b71Sopenharmony_ciError: device type is not supported.
774e41f4b71Sopenharmony_ci
775e41f4b71Sopenharmony_ci**Symptom**
776e41f4b71Sopenharmony_ci
777e41f4b71Sopenharmony_ciThe installation fails because the application does not support the current device type.
778e41f4b71Sopenharmony_ci
779e41f4b71Sopenharmony_ci**Possible Causes**
780e41f4b71Sopenharmony_ci
781e41f4b71Sopenharmony_ciThe application does not support the current device type.
782e41f4b71Sopenharmony_ci
783e41f4b71Sopenharmony_ci**Solution**
784e41f4b71Sopenharmony_ci
785e41f4b71Sopenharmony_ciTo adapt to the current device, add the current device type to the value of **deviceTypes** of the application. The value of **deviceTypes** can be any of the following: phone, tablet, 2in1, tv, wearable, and car.
786e41f4b71Sopenharmony_ci
787e41f4b71Sopenharmony_ci
788e41f4b71Sopenharmony_ci### 9568317
789e41f4b71Sopenharmony_ci**Error Message**
790e41f4b71Sopenharmony_ci
791e41f4b71Sopenharmony_ciError: isolationMode does not match the system.
792e41f4b71Sopenharmony_ci
793e41f4b71Sopenharmony_ci**Symptom**
794e41f4b71Sopenharmony_ci
795e41f4b71Sopenharmony_ciThe installation fails because the **isolationMode** of the appllication is not supported by the system.
796e41f4b71Sopenharmony_ci
797e41f4b71Sopenharmony_ci**Possible Causes**
798e41f4b71Sopenharmony_ci
799e41f4b71Sopenharmony_ci* The device supports the isolation mode (the value of **persist.bms.supportIsolationMode** is **true**), whereas the value of **isolationMode** in the HAP is **nonisolationOnly**.
800e41f4b71Sopenharmony_ci
801e41f4b71Sopenharmony_ci* The device does not support the isolation mode (the value of **persist.bms.supportIsolationMode** is **false**), whereas the value of **isolationMode** in the HAP is **isolationOnly**.
802e41f4b71Sopenharmony_ci
803e41f4b71Sopenharmony_ci**Solution**
804e41f4b71Sopenharmony_ci
805e41f4b71Sopenharmony_ciSet the value of **isolationMode** in the HAP configuration file based on the isolation mode of the device. 
806e41f4b71Sopenharmony_ci
807e41f4b71Sopenharmony_ci```
808e41f4b71Sopenharmony_ci// Query the value of persist.bms.supportIsolationMode. If errNum is:106 is returned, persist.bms.supportIsolationMode is not configured.
809e41f4b71Sopenharmony_cihdc shell
810e41f4b71Sopenharmony_ciparam get persist.bms.supportIsolationMode
811e41f4b71Sopenharmony_ci// Set persist.bms.supportIsolationMode.
812e41f4b71Sopenharmony_cihdc shell
813e41f4b71Sopenharmony_ciparam set persist.bms.supportIsolationMode [true|false]
814e41f4b71Sopenharmony_ci```
815e41f4b71Sopenharmony_ci
816e41f4b71Sopenharmony_ci### 9568315
817e41f4b71Sopenharmony_ci**Error Message**
818e41f4b71Sopenharmony_ci
819e41f4b71Sopenharmony_ciError: uri in proxy data is wrong.
820e41f4b71Sopenharmony_ci
821e41f4b71Sopenharmony_ci**Symptom**
822e41f4b71Sopenharmony_ci
823e41f4b71Sopenharmony_ci**uri** of the **proxyData** tag in the **module.json** file fails to be verified.
824e41f4b71Sopenharmony_ci
825e41f4b71Sopenharmony_ci**Possible Causes**
826e41f4b71Sopenharmony_ci
827e41f4b71Sopenharmony_ciThe **uri** does not meet the format requirements.
828e41f4b71Sopenharmony_ci
829e41f4b71Sopenharmony_ci**Solution**
830e41f4b71Sopenharmony_ci
831e41f4b71Sopenharmony_ciEnsure that the uri meets the format requirements.
832e41f4b71Sopenharmony_ci
833e41f4b71Sopenharmony_ci```
834e41f4b71Sopenharmony_ci// uri format specifications:
835e41f4b71Sopenharmony_ciThe uri of a data proxy must be unique and must be in the format of datashareproxy://bundle name of the current application/xxx.
836e41f4b71Sopenharmony_ci```
837e41f4b71Sopenharmony_ci
838e41f4b71Sopenharmony_ci### 9568310     
839e41f4b71Sopenharmony_ci**Error Message**
840e41f4b71Sopenharmony_ci
841e41f4b71Sopenharmony_ciError: compatible policy not same.
842e41f4b71Sopenharmony_ci
843e41f4b71Sopenharmony_ci**Symptom**
844e41f4b71Sopenharmony_ci
845e41f4b71Sopenharmony_ciThe compatibility policy of the new package is different from that of the existing package.
846e41f4b71Sopenharmony_ci
847e41f4b71Sopenharmony_ci**Possible Causes**
848e41f4b71Sopenharmony_ci
849e41f4b71Sopenharmony_ciAn HAP with the same name has been installed on the device.
850e41f4b71Sopenharmony_ci
851e41f4b71Sopenharmony_ci**Solution**
852e41f4b71Sopenharmony_ci
853e41f4b71Sopenharmony_ciUninstall the HAP with the same name and install the new HAP.
854e41f4b71Sopenharmony_ci
855e41f4b71Sopenharmony_ci
856e41f4b71Sopenharmony_ci### 9568391     
857e41f4b71Sopenharmony_ci**Error Message**
858e41f4b71Sopenharmony_ci
859e41f4b71Sopenharmony_ciError: bundle manager service is died.
860e41f4b71Sopenharmony_ci
861e41f4b71Sopenharmony_ci**Symptom**
862e41f4b71Sopenharmony_ci
863e41f4b71Sopenharmony_ciThe bundle manager service is stopped.
864e41f4b71Sopenharmony_ci
865e41f4b71Sopenharmony_ci**Possible Causes**
866e41f4b71Sopenharmony_ci
867e41f4b71Sopenharmony_ciWhen you run the **bm install -p *******.hap** command to install a pre-installed application, the running application is killed, causing an exception (for example, the foundation process restarts).
868e41f4b71Sopenharmony_ci
869e41f4b71Sopenharmony_ci**Solution**
870e41f4b71Sopenharmony_ci
871e41f4b71Sopenharmony_ciInstall the pre-installed applications based on the reference to the OTA upgrade.
872e41f4b71Sopenharmony_ci
873e41f4b71Sopenharmony_ci
874e41f4b71Sopenharmony_ci### 9568393     
875e41f4b71Sopenharmony_ci**Error Message**
876e41f4b71Sopenharmony_ci
877e41f4b71Sopenharmony_ciError: verify code signature failed.
878e41f4b71Sopenharmony_ci
879e41f4b71Sopenharmony_ci**Symptom**
880e41f4b71Sopenharmony_ci
881e41f4b71Sopenharmony_ciThe code signature fails to be verified.
882e41f4b71Sopenharmony_ci
883e41f4b71Sopenharmony_ci**Possible Causes**
884e41f4b71Sopenharmony_ci
885e41f4b71Sopenharmony_ci* The bundle does not contain code signature information.
886e41f4b71Sopenharmony_ci
887e41f4b71Sopenharmony_ci* The signature certificate is incorrect.
888e41f4b71Sopenharmony_ci
889e41f4b71Sopenharmony_ci
890e41f4b71Sopenharmony_ci**Solution**
891e41f4b71Sopenharmony_ci
892e41f4b71Sopenharmony_ci* Use the signing tool SDK to check whether the bundle is signed.
893e41f4b71Sopenharmony_ci	
894e41f4b71Sopenharmony_ci```
895e41f4b71Sopenharmony_ci	// Verify the signature.
896e41f4b71Sopenharmony_ci	java -jar SDK installation path (SDK in the DevEco installation directory) \toolchains\lib\hap-sign-tool.jar verify-app -outCertChain out.cer -outProfile out.p7b -inFile bundle path\**.hap
897e41f4b71Sopenharmony_ci	// 1. "is can not find codesign block" is returned, indicating that the bundle is not signed.
898e41f4b71Sopenharmony_ci	// 2. "verify codesign success," is returned, indicating that the bundle is signed.
899e41f4b71Sopenharmony_ci```
900e41f4b71Sopenharmony_ci	
901e41f4b71Sopenharmony_ci	
902e41f4b71Sopenharmony_ci	
903e41f4b71Sopenharmony_ci	
904e41f4b71Sopenharmony_ci* Check the signing process and signing certificate. For details, see <!--RP8--> [App/Service Signing](https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-signing-0000001587684945-V5)<!--RP8End-->.
905