从本机0.57开始,以前提供的答案都将不再起作用,因为gradle希望在其中找到捆绑包的目录和资产已更改。
没有反应本机捆绑的简单方法
构建调试版本的最简单方法是根本不使用react-native bundle
命令,而只需修改您的app/build.gradle
文件即可。
在文件的project.ext.react
地图内app/build.gradle
,添加bundleInDebug: true
条目。如果您希望它不是一个--dev
构建版本(没有警告和缩小的捆绑包),则还应该添加devDisabledInDebug: true
条目到同一地图。
与反应本机捆绑
如果由于某种原因您需要或想要使用react-native bundle
命令创建捆绑包,然后使用./gradlew assembleDebug
来创建包含捆绑包和资产的APK,则必须确保将捆绑包和资产放置在正确的路径中,在这里可以使用gradle找到他们。
从本机0.57开始,这些路径
android/app/build/generated/assets/react/debug/index.android.js
用于捆绑
和android/app/build/generated/res/react/debug
资产。因此,用于手动捆绑和使用捆绑包和资产构建APK的完整命令为:
react-native bundle --dev false --platform android --entry-file index.js --bundle-output ./android/app/build/generated/assets/react/debug/index.android.bundle --assets-dest ./android/app/build/res/react/debug
然后
./gradlew assembleDebug
捆绑和资产路径
请注意,gradle在其中查找包和资产的路径可能会更改。要找出这些路径在哪里,请查看目录中的react.gradle
文件node_modules/react-native
。以def jsBundleDir =
和开头的行def resourcesDir =
指定gradle在其中分别查找包和资产的目录。