在尝试构建react native android release build时出现以下错误。我所有的图片都是svg格式。
:app:generateReleaseResources UP-TO-DATE
:app:mergeReleaseResources FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:mergeReleaseResources'.
> /Users/shamnad.shaji/Workspace/React-Native/project/android/app/src/main/res/drawable-mdpi/images_defaultprofile.svg: Error: The file name must end with .xml or .png
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 1.514 secs
我用Google搜索此错误,有人建议在我的gradle.properties文件中包含android.disableResourceValidation=true
选项。
我的gradle.properties
看起来像这样。
MYAPP_RELEASE_STORE_FILE=my-release-key.keystore
MYAPP_RELEASE_KEY_ALIAS=my-key-alias
MYAPP_RELEASE_STORE_PASSWORD=password
MYAPP_RELEASE_KEY_PASSWORD=password
android.disableResourceValidation=true
运行发布版本的步骤是
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/
cd android/
./gradlew assembleRelease
有人可以建议我怎么做吗。
答案 0 :(得分:0)
我认为尚未引入svg支持https://github.com/react-native-community/react-native-svg/issues/109
您可以将图像转换为.png。不需要任何库即可呈现这些内容。
但是如果您想要.svg。您可以使用下面的库渲染svg图像
https://github.com/vault-development/react-native-svg-uri
请勿使用此svg库以及将其转换为.png的方法。我刚刚看到的Android版本中的该库也失败了
答案 1 :(得分:-1)
我建议使用 react-native-svg 将svg文件包括在react native中!