文章目录
- 一、报错信息
- 二、问题分析
- 三、解决方案
一、报错信息
在 DevEco Studio 中 , 使用 远程设备 , 向 P40
Failure[INSTALL_PARSE_FAILED_USESDK_ERROR]
compileSdkVersion and releaseType of the app do not match the apiVersion and releaseType on the device.
二、问题分析
报错信息翻译后内容为 : 应用的 compileSdkVersion 和 releaseType 与设备上的 apiVersion 和 releaseType 不匹配 ;
当前使用的 P40 远程设备 , 使用的是 API 8 版本的 SDK ;
在 根目录下的 build-profile.json5 中配置的 编译版本 ,
- compileSdkVersion 配置的 编译版本是 API 9 ;
- compatibleSdkVersion 配置的 最低兼容的版本是 API 9 , 该配置使得应用不能再低于 API 9 的设备中运行 ;
build-profile.json5 完整配置信息如下 :
{"app": {"signingConfigs": [],"compileSdkVersion": 9,"compatibleSdkVersion": 9,"products": [{"name": "default","signingConfig": "default",}],"buildModeSet": [{"name": "debug",},{"name": "release"}]},"modules": [{"name": "entry","srcPath": "./entry","targets": [{"name": "default","applyToProducts": ["default"]}]}]
}
如果 只将 “compatibleSdkVersion”: 设置改为 8 , 会报如下错误 :
Apps of API version 9 cannot run on devices of API version 8 or earlier. Set compatibleSdkVersion to 9 or a larger value in the project-level build-profile.json5 file.
API 版本 9 的应用程序无法在 API 版本 8 或更早的设备上运行 ,
在 项目级构建配置文件 build-profile.json5 file 中 将 compatibleSdkVersion 设置为 9 或更大的值 ;
这里需要同时将 compileSdkVersion 和 compatibleSdkVersion 版本号都改为 8 ;
"compileSdkVersion": 8,"compatibleSdkVersion": 8,
此时 点击 Sync Now 进行同步 , 会报如下错误 ;
Cause:
1.The @ohos/hvigor version () is not within the expected range 3.x.x (3.x.x >= 3.0.9).
2.The @ohos/hvigor-ohos-plugin version () is not within the expected range 3.x.x (3.x.x >= 3.0.9).
Solution: Change the values of @ohos/hvigor to 3.0.9 and @ohos/hvigor-ohos-plugin to 3.0.9, while updating the command line script hvigor-wrapper.js that matches hvigor, which will auto-install the respective versions of the tools. Then sync the project again.
翻译后 :
原因:
1.@ohos/hvigor version () 不在预期的 3.x.x (3.x.x >= 3.0.9) 范围内 ;
2.@ohos/hvigor-ohos-plugin version () 不在预期的 3.x.x (3.x.x >= 3.0.9) 范围内 ;
解决方法:将 @ohos/hvigor 的值改为 3.0.9 并且 将 @ohos/hvigor-ohos-plugin 的值改为3.0.9 , 同时更新与 hvigor 匹配的命令行脚本hvigor-wrapper.js , 该脚本将自动安装相应版本的工具 , 然后再次同步项目 ;
三、解决方案
由于该项目创建时 , 直接创建的 API 9 的项目 , 所有的配置都基于 API 9 进行 配置的 , 这里重新创建一个 API 8 的项目 ;
选择项目的 SDK 版本号为 API 8 , 然后点击 Finish 完成创建 ;