react-native transformClassesAndResourcesWithProguardForRelease 打包 编译 失败

未结帖
0 760
ajian admin_jim 2018-02-18
悬赏:5飞吻

AS打包出现app:transformClassesAndResourcesWithProguardForRelease错误

  转载 http://blog.csdn.net/good_learning_it/article/details/52811400

今天打包项目的正式签名APK出现以下错误,当时挺着急用的实在没办法就只能用测试apk凑合来对付一下了

Error:Execution failed for task ':app:transformClassesAndResourcesWithProguardForRelease'.
> java.io.IOException: Please correct the above warnings first

解决问题历经千辛万苦啊 
出现这个问题首先看看是不是编译

  1. 出问题了,毕竟使用的电脑配置不高卡得要死,所以又重新试了几遍仍然是这个错误,还尝试着重启电脑来仍然不行,后面再催得紧~~我当时是崩溃的。。

  2. 然后请教万能的 度娘,stackoverfolw上有人收是由于升级As后单元测试插件未升级导致的,接下来就找同事没有升级的去打包,不幸的是还是同样的错误,同事告诉说是由于jar包冲突导致

  3. 当时项目急着要用,发过测试版就干别的活儿了。此问题暂时放一放……

  4. 直到晚上回家,仍然想不通为啥出现这个问题,继续尝试。最后解决问题,出现问题的原因在这里,啥都不说了,看下面的代码吧

 buildTypes {
        release {
            minifyEnabled true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }1234567

原因分析: 
以下两句是在看到一篇android性能优化的文章后添加的,目的是为了减小安装包的大小,这样做确实会去掉用不到的资源文件达到减小安装包的目的。

  • 在这里开启了混淆,但是未加入相应的混淆规则,所以在项目编译时出错了

minifyEnabled true
shrinkResources true

添加这样的两句出现的错误就是前文那样,经过测试,一定会出现的,如有不同意见请给我留言,敬请指教。

修改方法 
修改后如下:

 buildTypes {
        release {
            minifyEnabled false
            shrinkResources false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }1234567

修改后,重新打包即可,大功告成。


热忱回答0


最近热帖

近期热议

  1. javascript——prototype与__proto 9
  2. Mysql 中出现的Data truncated for column 3
  3. 在nginx中使用x-sendfile的解决方案 3
  4. 高版本jQuery面插件实现Ajax上传图片 1
  5. Thinkphp Socket.class.php 类的使用 1
  6. 使用ionic3创建第一个App 0
  7. ios-oc html5 0
  8. nginx.conf 0
  9. 基于ionic3.4.0的项目搭建 0
  10. php 缩略图 0