如果我更新到最新的Gradle然后需要React Native中的图像,我就无法构建发布版本。
我在React Native上发布了an issue,但也许你们有更多想法:)
我创建了一个小test project,但以下是重现它的步骤:
<table>
<tbody data-bind="foreach: { data:taskRecordOverview, as: '_task'}">
<tr data-bind="foreach: { data:Object.keys(_task), as: '_key'}">
<td data-bind="text: _task[_key]"></td>
</tr>
</tbody>
</table>
react-native init Test
index.js
命令cd android && ./gradlew assembleRelease
不应该失败
当JS需要图像时运行./gradlew assembleRelease
失败:
./gradlew assembleRelease
如果不需要图像,则命令正常。
/Users/almouro/bam/uefa/TestGradle3/android/app/build/intermediates/res/merged/release/drawable-mdpi/image.png: error: uncompiled PNG file passed as argument. Must be compiled first into .flat file..
error: failed parsing overlays.
将git clone https://github.com/Almouro/react-native-with-gradle-4
yarn
cd android
./gradlew assembleRelease
添加到android.enableAapt2=false
可解决此问题,但这只是一种解决方法,而且即时应用功能无效。
你们有什么想法吗?
我的理解是React Native bundleJS gradle任务复制了android merged resources文件夹中的所有图片,但aapt现在希望那里的图像能够编译成android/gradle.properties
个文件。