Java 在Play store上发布应用程序时如何处理.so文件?

Java 在Play store上发布应用程序时如何处理.so文件?,java,android-studio,android-ndk,native,Java,Android Studio,Android Ndk,Native,我创建了应用程序的发布版本,该版本在AS3.5.1中包含java和cpp代码,并带有默认的渐变。上传应用程序后,我面临的问题是按照谷歌的说明上传本地代码的zip文件。(我的文件结构与Google页面上描述的文件结构不匹配-,我没有名为Universal的文件夹,在以zip格式上载obj文件夹后,Google只是通知这些文件无效-路径:app\build\mediates\cmake\release\obj)。 我得到的错误如下 本机调试符号包含无效的目录obj。仅支持Android ABI。可能

我创建了应用程序的发布版本,该版本在AS3.5.1中包含java和cpp代码,并带有默认的渐变。上传应用程序后,我面临的问题是按照谷歌的说明上传本地代码的zip文件。(我的文件结构与Google页面上描述的文件结构不匹配-,我没有名为Universal的文件夹,在以zip格式上载obj文件夹后,Google只是通知这些文件无效-路径:app\build\mediates\cmake\release\obj)。 我得到的错误如下
本机调试符号包含无效的目录obj。仅支持Android ABI
。可能是我无法理解ABIs(应用程序二进制接口)。

我在将目标文件上载到Google Play时也遇到了同样的问题。事实证明,解压时zip文件层次结构并不是Google Play处理器所期望的。您需要确保支持的体系结构的目录都位于zip文件的根目录。此外,您还需要确保zip文件中没有其他隐藏的系统文件(例如,如果在Mac上执行此操作,则为DS_Store)。 在我的Mac上:导航到所需的obj目录(app/build/intermediates/cmake/release/obj for me)并运行


这将包括32位和64位x86和arm体系结构,这是我在撰写本文时所需要的全部。然后上传symbols.zip文件,它应该可以工作。

您没有提供太多信息,因此简单而简短的回答是:使用gradle及其
externalNativeBuild
NDK集成。
zip -r symbols.zip x86* arm*