INSTALL_PARSE_FAILED_USESDK_ERROR处理指导解决方法
INSTALL_PARSE_FAILED_USESDK_ERROR处理指导
compileSdkVersion and releaseType of the app do not match the apiVersion and releaseType on the device.
build.gradle的兼容版本改成模拟器API版本一致
问题现象
如果工程中配置的releaseType字段与设备(模拟器和真机)镜像版本不匹配,则运行时会报INSTALL_PARSE_FAILED_USESDK_ERROR错误,如下图所示。
compileSdkVersion and releaseType of the app do not match the apiVersion and releaseType on the device
解决措施
在设备中运行应用/服务时,build.gradle(API4-7)或build-profile.json5(API8及以上版本)文件中的compileSdkVersion和compatibleSdkVersion,以及SDK Stage(Beta或Release)需要与设备的apiVersion、releaseType相互匹配才能正常运行。具体的修改方法如下:
- 在HarmonyOS SDK存储目录下的Sdk\hmscore\{版本号}\toolchains文件下打开CMD命令行工具,执行如下命令进行查询真机设备的apiVersion和releaseType取值。
- 在手机/平板HarmonyOS 3.1 Release设备上:
hdc -c shell getprop persist.sys.ohc.apiversion getprop persist.sys.ohc.releasetype
- 在手机/平板HarmonyOS 3.1 Release之前版本的设备上:
hdc -c shell getprop hw_sc.build.os.apiversion getprop hw_sc.build.os.releasetype
- 在手机/平板HarmonyOS 3.1 Release设备上:
- 打开模块的build.gradle(API4-7)或打开工程的build-profile.json5(API8-9)文件,查看compileSdkVersion、compatibleSdkVersion。
图1 在模块的build.gradle(API4-7)文件中查看compileSdkVersion、compatibleSdkVersion
-
-
-
- 点击File > Settings > SDKs > HarmonyOS,查看compileSdkVersion对应的SDK stage。例如,下图中API Version 7对应的Stage为Release。
- 根据查询的设备apiversion、releaseType,以及SDK Stage的取值,再查询下表中的匹配关系,来修改compileSdkVersion和compatibleSdkVersion的值。其中compileSdkVersion需要修改工程和各模块build.gradle中的取值;compatibleSdkVersion需要修改各模块下的build.gradle中的取值。
如果下表中找不到与apiversion、releaseType,以及SDK Stage相匹配的取值,可以检查对应API Version的SDK是否可以更新,或者更新设备的HarmonyOS系统版本,然后再根据升级更新后的取值,来匹配下表内容进行修改。
apiVersion
releaseType
compileSdkVersion
SDK Stage
compatibleSdkVersion
4
Release
4
Release
4
4
Release
5
Release
4
5
Release
5
Release
4或5
5
Release
5
Release
4或5
5
Release
6
Release
4或5
5
Release
6
Release
4或5
6
Release
5
Release
4或5
6
Release
6
Release
4或5或6
6
Release
5
Release
4或5
6
Release
6
Release
4或5或6
7
Release
7
Release
4或5或6或7
7
Release
6
Release
4或5或6
8
Release
6
Release
4或5或6
8
Release
8
Release
8
9
Release
9
Release
9
- 当前应用版本和设备镜像版本匹配后,如果仍然报该错误,且设备镜像版本已更新为3.1 Release版本,则说明当前使用的DevEco Studio版本与设备运行的镜像版本不匹配,请升级DevEco Studio至3.1 Release版本,在新版本DevEco Studio上进行运行/调试。