我正在使用 OpenFL 构建一个 Android 应用程序以在 Google Play 上分发。我只想针对armv7
设备,并且我相信 OpenFL 会armv7
- 默认情况下只构建。
但是,在构建 OpenFL 构建系统时,会创建并填充libs/armeabi
文件夹而不是libs/armeabi-v7a
文件夹。这样做的问题是,这使 Google Play 相信生成的 apk 支持armv5/armv6/armv7
,而实际上它只支持armv7
. 这意味着我的应用程序从使用旧/不兼容设备的人那里获得了一些 1 星评价。
在这个Github 问题上,Joshua Granick (jgranick) 解释了为什么构建工具会这样做:
哦,顺便说一句,最初我们只尝试了 armeabi-v7,但它无法在某些设备上运行。这就是为什么存在当前行为或使用 armeabi,并且只有在有 armv5/6 版本的情况下才添加 armeabi-v7
我想知道他提到的问题是什么,以及它会影响哪些设备/Android 版本。根据具体情况,可能仍然只进行armv7
构建并手动将有问题的设备列入黑名单。
最后一个选择是通过“胖”构建来简单地支持armv5/armv6
设备,或者只构建armv5
我认为在任何地方都兼容的构建。<architecture>
使用文件中的标签非常容易project.xml
。如果无法解决 Joshua 提到的问题,我可能会做出权衡。
此外,使用 Google Play 开发人员仪表板,我还可以手动将 armv5/armv6 设备列入黑名单,但对每个应用程序/apk 执行此操作非常耗时。
所以我的问题是:我如何才能armv7
使用 OpenFL 构建仅 Android 版本,并让 Google Play 只允许兼容设备,而不会遇到我上面引用的问题?如果那不可能,那么我最好的选择是什么?
以下是我在构建时获得的相关 Google Play apk 详细信息供参考armv7
:
谢谢!