google play store在react原生android应用程序中出现64位版本问题

google play store在react原生android应用程序中出现64位版本问题,android,react-native,google-play,32bit-64bit,react-native-android,Android,React Native,Google Play,32bit 64bit,React Native Android,根据: 2019年8月,Play store将要求带有本机库的新应用程序和应用程序更新除了提供32位版本外,还提供64位版本。 我有一个React本机应用程序(包括本机代码)。我的问题是,我如何知道我正在使用的第三方库或甚至我自己的代码是否不支持64位?我怎样才能修好它 更新 我将x86_64添加到我的build.gradle中,现在我在apk中看到了x86_64文件夹,但我认为有些文件丢失了 下面是我的x86文件夹的外观: 下面是我的x86_64文件夹的外观: 应用程序的所有本机代码都存储在

根据:

2019年8月,Play store将要求带有本机库的新应用程序和应用程序更新除了提供32位版本外,还提供64位版本。

我有一个React本机应用程序(包括本机代码)。我的问题是,我如何知道我正在使用的第三方库或甚至我自己的代码是否不支持64位?我怎样才能修好它

更新

我将
x86_64
添加到我的
build.gradle
中,现在我在apk中看到了
x86_64
文件夹,但我认为有些文件丢失了

下面是我的
x86
文件夹的外观:

下面是我的
x86_64
文件夹的外观:


应用程序的所有本机代码都存储在apk根目录下的
libs/
目录中。例如,对于已编译的ARM或x86代码,您可以在libs/architecture\u type/lib\u name.so中找到它

APK本质上只是一个zip文件,因此您可以使用任何zip工具提取它


这个。如果您没有用于arm64-v8a的目录,或者您没有x86但没有x86_64,则您缺少64位本机代码。

应用程序的所有本机代码都存储在apk根目录的
libs/
目录中。例如,对于已编译的ARM或x86代码,您可以在libs/architecture\u type/lib\u name.so中找到它

APK本质上只是一个zip文件,因此您可以使用任何zip工具提取它

这个。如果您没有用于arm64-v8a的目录,或者没有x86但没有x86\u 64,则您缺少64位本机代码。

Facebook似乎在支持64位版本上拖拖拉拉

您可以检查build文件夹中的intermediates,查看您支持的ABI

Android采用构建abi的最低公分母。如果Facebook不尽快解决这个问题,这将成为一个问题。

Facebook似乎在支持64位版本上拖拖拉拉

您可以检查build文件夹中的intermediates,查看您支持的ABI


Android采用构建abi的最低公分母。如果Facebook不尽快解决这一问题,这将成为一个问题。

React Native将在android 0.59版开始时支持64位


React Native将支持android 0.59版的64位启动版本


React-native于3月12日发布了新版React-native。 在此新版本中,react native支持64位系统。 您可以在下面的链接上阅读更多关于此的详细信息。

React-native于3月12日发布了新版React-native。 在此新版本中,react native支持64位系统。 您可以在下面的链接上阅读更多关于此的详细信息。

react本机新版本自动支持64位。 只需将react native version更新到0.59.0或之后,然后重新构建应用程序,只需运行:

react-native upgrade 0.59.1

react本机新版本自动支持64位。 只需将react native version更新到0.59.0或之后,然后重新构建应用程序,只需运行:

react-native upgrade 0.59.1

如果您使用的react native版本低于0.59,则必须将应用升级到react native 0.59或更高版本。React native仅支持0.59版本的64位

另外,确保你的应用程序在MyProject/Android/app/Build.gradle文件中有以下行

splits {
        abi {
            reset()
            enable enableSeparateBuildPerCPUArchitecture
            universalApk true  // If true, also generate a universal APK
            include "armeabi-v7a", "x86", "arm64-v8a", "x86_64"
        }
    }
有关更多信息,请参阅:

如果您使用的react native版本低于0.59,则必须将应用升级到react native 0.59或更高版本。React native仅支持0.59版本的64位

另外,确保你的应用程序在MyProject/Android/app/Build.gradle文件中有以下行

splits {
        abi {
            reset()
            enable enableSeparateBuildPerCPUArchitecture
            universalApk true  // If true, also generate a universal APK
            include "armeabi-v7a", "x86", "arm64-v8a", "x86_64"
        }
    }
有关更多信息,请参阅:

谢谢!!我更新了build.gradle以编译x86_64,但我认为这还不够,因为输出文件夹中只有一个文件。请参阅问题中的更新。对于新的React本机项目(0.59.8),我拥有所有库:x86_64、x86、arm64-v8a、armeabi-v7a,它们包含相同的文件。我想这意味着APK支持64位。谢谢!!我更新了build.gradle以编译x86_64,但我认为这还不够,因为输出文件夹中只有一个文件。请参阅问题中的更新。对于新的React本机项目(0.59.8),我拥有所有库:x86_64、x86、arm64-v8a、armeabi-v7a,它们包含相同的文件。我想这意味着APK支持64位。React-Native 0.59已经发布,并且支持android 64位体系结构。所以我必须更新React-Native版本以提供64位体系结构支持,对吗?我在Play store上发布了一个应用程序,使用0.57版本的React-Native,现在我收到了关于64位版本的邮件,那又怎样我现在要做什么?我是否应该将该项目的react本机版本更新为0.59,然后发布更新?是的,只需升级到0.59并生成新版本。上传它,如果它工作良好!真的没有办法让它在早期版本(如react native 0.57.8)上工作吗?我继承了一个庞大的RN项目,虽然我试图升级它(收到它时是0.54),但升级到0.58却是不可能的,因为它根本不起作用了;我还有将近200个文件仍在使用relay classic进行转换。React Native 0.59已经发布,支持android 64位体系结构。所以我必须更新React Native版本以提供64位体系结构支持,对吗?我在Play store上发布了一个应用程序,使用React Native的0.57版本,现在我收到了邮件关于64位版本,我现在要做什么?我是否应该将该项目的react本机版本更新为0.59,然后发布更新?是的,只需升级到0.59并生成新版本。上传它,如果它工作良好!真的没有办法让它在早期版本(如react native 0.57.8)上工作吗?我继承了一个庞大的RN项目