问题背景:

DevEco创建了Native C++类型的工程,创建后在模拟器上运行HAP时,报错"error: install parse native so failed.", 原因是模拟器运行在Windows上,需要X86的SO,但是编译默认是arm64的so。需要修改配置,使HAP在模拟器上运行。

解决方法:

定位到oh-package.json5文件,增加abifilter选项。增加位置如下, 位于buildoption下面,增加externalNativeOptions选项即可。

"products": [
      {
        "name": "default",
        "signingConfig": "default",
        "compatibleSdkVersion": "4.0.0(10)",
        "runtimeOS": "HarmonyOS",
        "buildOption": {
          "strictMode": {
            "caseSensitiveCheck": true,
            "useNormalizedOHMUrl": false
          },
          // ... 增加部分 ...
          externalNativeOptions: {
            abiFilters: ['arm64-v8a', "x86_64"]
          }
        },
      }
    ],

其他选项:

请参考:鸿蒙HAP编译配置

Logo

社区规范:仅讨论OpenHarmony相关问题。

更多推荐