android - 在 react native 中为 android 构建发布 apk 对于 svg 文件失败
问题描述
我在尝试构建 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
我用谷歌搜索了这个错误,人们建议android.disableResourceValidation=true
在我的 gradle.properties 文件中包含该选项。
我的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
有人可以建议我该怎么做吗?
解决方案
我认为还没有引入 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 中发布时也失败了
推荐阅读
- powershell - Powershell 使用 foreach 循环将变量相加
- php - odbc_fetch_array(): SQL 错误是说字段引用了多个表但不应该。微软访问 ODBC PHP
- angular - 打字稿中的异步和等待方法(角度)
- flutter - 尝试在颤动中打开抽屉时出现意外的空值
- laravel - Laravel - 代码在任务调度程序中有效,但在队列作业中无效
- python - 使用python连接文件
- javascript - 如何实时回放 CSV 数据?
- mysql - 更改 MYSQL 工作台视图上的定义器
- pyaudio - 在 pyaudio 中,如何让流“始终”产生声音?
- java - Spring ContollerAdvice 不会将正文添加到返回的错误中