Nativescript:为 Android 添加 x86_64 libNativeScript.so

Nativescript: Add x86_64 libNativeScript.so for Android

我有 Nativescript-vue 项目。

由于 Google 播放 64 位要求我正在尝试添加 x86_64 本机代码。

我在研究时发现的所有资源都说要这样做:

app/App_Resources/Android/app.gradle 文件中:

android {
  defaultConfig {  
    generatedDensities = []
    applicationId = "com.foo.bar"
    ndk.abiFilters 'armeabi-v7a','arm64-v8a','x86', 'x86_64'
  }
  aaptOptions {  
    additionalParameters "--no-version-vectors"  
  }  
} 

但是 'x86_64' 被忽略输出 apk 的 lib 文件夹只包含这个平台 'armeabi-v7a', 'arm64-v8a', 'x86'.

我也发现了 this github issue ,Nativescript 团队说在下一个版本中会添加 'x86_64' 平台,所以我升级了 {N} ,但没有什么区别。

还尝试了 "ABI Split" 配置,我在 {N} 官方文档中找到并添加了 'x86_64' 以包含在内:

android {
....
  defaultConfig {
    ....
    ndk {
      abiFilters.clear()
    }
  }
  splits {
    abi {
      enable true //enables the ABIs split mechanism
      reset() //reset the list of ABIs to be included to an empty string
      include 'arm64-v8a', 'armeabi-v7a', 'x86', 'x86_64'
      universalApk true
    }
  }
}

不过也没什么区别。

有什么方法可以手动实现吗?

此外,任何建议、信息、文档都会有所帮助。

我的配置:

已尝试 "tns-android" 版本“5.3.1”和“6.0.0”

如果您还需要我的 project/config...请在评论中告诉我。

Android 支持 64 位的运行时 v6.0.2 已经发布,迁移命令可能不会始终将您带到最新版本的 tns-android,而是最新版本。

您可以在 package.json 上手动更新版本,或者通过 CLI 删除并重新添加平台将带您到最新版本的运行时。