HarmonyOS SDK對應的API版本躍遷引發的歷史工程適配問題解決方案
歷史工程自動適配
由于最新版本的HarmonyOS SDK對應的API Version發生了躍遷,原有的API Version 3變成了當前的API Version 4,原有的API Version 4變成了當前的API Version 5。因此,使用最新版本的DevEco Studio打開歷史工程,需要對歷史工程進行適配;如果歷史工程未做適配,會導致工程出現運行錯誤INSTALL_PARSE_FAILED_USESDK_ERROR。
在打開歷史工程前,建議您先點擊Help > Check for Updates,檢查并升級DevEco Studio至最新版本;點擊Tools >SDK Manager,檢查并升級SDK及工具鏈版本至最新版本。
使用DevEco Studio打開歷史工程,會提示您將歷史工程進行升級適配,點擊Update,工具會自動修改工程中的配置信息,包括:
升級編譯構建插件版本為2.4.2.7
在build.gradle中添加OHOS測試框架的依賴
升級config.json和build.gradle中的API Version
升級config.json中的releaseType字段的值:如果是DevEco Studio V2.1 Beta 2及之前的版本的工程,該字段適配為“Release”。工程升級前后的config.json關鍵字段對比如下表所示。
如果是DevEco Studio V2.1 Beta 3版本的工程,該字段保持“Beta1”不變。
INSTALL_PARSE_FAILED_USESDK_ERROR處理指導
問題現象:
如果工程中的releaseType字段與設備(模擬器和真機)中的SDK鏡像版本的值不匹配,則運行時會報INSTALL_PARSE_FAILED_USESDK_ERROR錯誤,如下圖所示。
解決措施:
在設備(模擬器或真機)中運行應用時,設備的Rom版本、releaseType和工程對應的SDK版本需要遵循如下的匹配關系。
說明
真機設備的releaseType取值,可以通過如下命令進行查詢。
- hdc shell
- getprop hw_sc.build.os.releasetype
例如:在模擬器中運行時,config.json中的releaseType字段必須修改為Release,SDK Manager中的SDK版本為2.1.1.20,Stage為Release。