Qt创建者:创建一个兼容多个ABI的APK?

问题描述 投票:2回答:1

在android上构建Qt应用程序时,您必须选择是否要使用ARM abi或x86 abi。是否可以创建与两个ABI兼容的APK,以及如何?

如果我是正确的,Qt Creator构建的APK有一个子文件夹libs /包含JNI所需的所有共享库。根据您构建的内容,libs /包含带有正确文件的“armeabi-v7a”或“x86”子文件夹。如何让APK包含两个子文件夹,以便所有Android设备都可以运行APK?我尝试修改APK自己(因为它是一个简单的.zip),但它搞砸了签名等。

或者我注定要用两个APK发布到Google Play?

android qt qt-creator
1个回答
1
投票

我找到了一个有效的解决方案(至少对我而言)。

  • 单独构建APK(例如,armeabi-v7a和arm64-v8a)。在QtCreator的Buil APK Step中签署APK,以构建一个版本 - APK(没有调试服务器)。
  • 使用ZIP工具(例如7zip)打开未签名的arm-v7a版本APK并将“/ lib / armeabi-v7a”文件夹复制到未签名的arm64-v8a版本APK(未签名的APK由QTC在签名之前创建)。
  • 在组合的apk上运行zipalign 4并使用apksigner签署对齐的APK。
  • 完成

整个过程可以在cmd或bat文件中编程。

© www.soinside.com 2019 - 2024. All rights reserved.