代码之家  ›  专栏  ›  技术社区  ›  NullPointerException

如何确保应用程序与64位兼容?

  •  0
  • NullPointerException  · 技术社区  · 5 年前

    重要链接:

    https://android-developers.googleblog.com/2019/01/get-your-apps-ready-for-64-bit.html

    https://developer.android.com/distribute/best-practices/develop/64-bit#assess_your_app

    正如你所看到的:

    从2019年8月1日开始:包括 除了提供64位版本外,还需要提供本机代码 发布到Google Play时为32位版本。

    当你读到这篇文章时,你可以理解 必须 上传两个版本的应用程序,一个为32位编译,一个为64位编译。

    但是你可以读到:

    使用apk analyzer查找本机库apk analyzer是一种工具 这允许您评估构建的APK的各个方面。在我们 case,我们将使用它来查找任何本机库,并确保 存在64位库。

    1. 打开android studio,打开任何项目。
    2. 从菜单中选择Build>Analyze apk_
    3. 启动APK分析器
    4. 选择要评估的APK。
    5. 在lib文件夹中查找任何“.so”文件。如果在应用程序中找不到任何“.so”文件,则 您的应用程序已准备就绪,无需进一步操作。如果你 请参阅armeabi-v7a或x86,然后您就有了32位库。

    要点:

    在lib文件夹中查找任何“.so”文件。如果你在你的应用中根本找不到任何“.so”文件,那么你的应用已经准备好了,不需要进一步的操作。

    在我的例子中,我用Java代码开发,而我找不到 lib 文件夹使用apk analyzer,所以…理论上,不需要采取进一步的行动。但他们为什么这么说 “从2019年8月1日起,在发布到Google Play时,除了32位版本外,还需要提供包括本机代码的所有新应用程序和应用程序更新。” ?

    我需要做什么?或者我可以像现在一样继续上传我的apk吗?

    谢谢你

    1 回复  |  直到 5 年前
        1
  •  2
  •   Perraco    5 年前

    为了澄清,64位的需求仅用于除了Java之外还使用本地二进制文件的项目,以及由本地二进制文件表示的C/C++编译的文件。 要求规定,除了32位二进制文件之外,开发人员还必须包括64位变体。这可以通过两种方式来实现,通常使用一个包含两种二进制类型(32位和64位.so文件)的APK,或者将其拆分为两种APK风格。

    不管怎样, 如果你只用Java开发了你的项目,那么你就不用担心了。 除非您依赖于独立使用本机二进制文件的第三方库。在这种情况下,您必须确保您的任何项目依赖项也包括64位本机变量。

    如果你找不到 *所以 在你的apk文件,然后没有进一步的行动,你需要采取,一切都很好去。

    推荐文章