Gradlew bundleRelease不会在react-native

时间:2019-06-13 08:30:56

标签: react-native-android

我尝试获取应用APK。我做得很好。但是,我今天尝试使用get apk的其他应用程序,但它没有给我发布apk。为什么?

我按照以下步骤操作: enter link description here

通常情况下,它需要2-3分钟,但现在仅持续3秒,并且不会生成apk

它是这样说的:

  

在此版本中使用了不推荐使用的Gradle功能,因此   与Gradle 6.0不兼容。使用'--warning-mode all'来显示   个别弃用警告。看到   https://docs.gradle.org/5.4.1/userguide/command_line_interface.html#sec:command_line_warnings

7 个答案:

答案 0 :(得分:7)

简短答案请改用gradlew assembleRelease

不是简短的答案:)您正在使用的命令gradlew bundleRelease建立了一个android app bundle.read this: Difference between apk (.apk) and app bundle (.aab) 还有这个: https://developer.android.com/guide/app-bundle AAB文件是新文件,并非所有商店都支持它。

答案 1 :(得分:2)

我有同样的问题。以下命令对我有用:

./gradlew bundleRelease命令之后,我们获得了应用程序的 .aab 版本。要获取APK,您应使用以下命令在任何设备上运行发行版应用。

确保您已连接android设备

your-project/中运行此命令:

react-native run-android --variant=release

然后可以在android/app/build/outputs/apk/release中找到APK

希望这会有所帮助

答案 2 :(得分:1)

使用gradlew bundleRelease生成应用程序捆绑包(.aab文件),使用gradlew assembleRelease生成apk(.apk文件)。要在模拟器上安装发行版,请使用react-native run-android --variant=release。希望对您有帮助

答案 3 :(得分:1)

我制作了一个名为build.sh的文件。 当我想在ReactNative中发布新版本的android时,只需在终端中键入并按sh ./build.sh

我的build.sh文件中的shell脚本:

npx jetify && cd android && ./gradlew clean && ./gradlew assembleRelease && ./gradlew bundleRelease && cd ..

答案 4 :(得分:1)

简而言之,命令gradlew bundleRelease用于生成.aab文件,而命令gradlew assembleRelease用于生成.apk文件,因此相应地使用命令

答案 5 :(得分:0)

以下方法可以解决您的问题:

打开Android Studio,然后从“构建/构建捆绑包/ Apk”中选择“构建捆绑包”。

enter image description here

然后,打开控制台并从项目的根目录运行cd android && ./gradlew bundleRelease。

您可能会遇到诸如“>无法添加任务'包装器'之类的错误,因为具有该名称的任务已经存在。”,因为在4.8和更高版本中不推荐使用覆盖的内置任务 产生错误。

为防止这种情况,请按如下所示更新您的android / build.gradle:

从:

task wrapper(type: Wrapper) { gradleVersion = '4.4'
distributionUrl = distributionUrl.replace("bin", "all") }

收件人:

wrapper { gradleVersion = '4.4' distributionUrl = distributionUrl.replace("bin", "all") }

最后,不要忘了通过bundletool将.aab文件转换为.apk,以便在本地测试您的应用(完全是apk文件)

最诚挚的问候

答案 6 :(得分:0)

您只需打开Android Studio左下角的 Build Variants (构建变体)窗口,然后选择 release 作为当前变体:

enter image description here