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(避免被误删除)写了配置的

<?xml version="1.0" encoding="utf-8"?>

<resources xmlns:tools="http://schemas.android.com/tools"

    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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容