release 版本时,react native Image引用原生图片,不正常显示

导致问题原因:是由于设置shrinkResources true引起的。

在proguard-rules.pro文件中配置此方法是为了删除无效的Resource。

解决方案:创建res/raw/keep.xml,在keep.xml文件中添加不想被删除的资源。

1.只有minififyEnable false   或者 minififyEnable false  && shrinkResources true

资源文件和layout都存在且是有内容的

2.只有minifyEnable true

文件大小改变,包变小

资源文件和layout都存在且是有内容的

3.minifyEnable true && shrinkResources true

资源文件在但是没有内容大小都变成67字节,layout文件内容被清空

4.minifyEnable true && shrinkResources true 在res/raw/keep.xml(避免被误删除)写了配置的

    tools:keep="@drawable/bg0,@drawable/bg1"/>

没有在配置文件中声明保存的文件没有内容,声明保存的文件有内容(资源文件和layout文件)

注意:string.xml中没有被引用的怎么设置都不会被删除

可以通过gradlew clean assembleRelease - info来获得APK缩减资源的概览

当您压缩资源时,Gradle Console 会显示它从应用软件包中移除的资源的摘要。例如:

:android:shrinkDebugResources

Removed unused resources: Binary resource data reduced from 2570KB to 1711KB: Removed 33%

:android:validateDebugSigning

网搜资料

引用:https://blog.csdn.net/u011889786/article/details/56686492

你可能感兴趣的:(release 版本时,react native Image引用原生图片,不正常显示)