AS打包出现app:transformClassesAndResourcesWithProguardForRelease错误

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

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

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

出问题了,毕竟使用的电脑配置不高卡得要死,所以又重新试了几遍仍然是这个错误,还尝试着重启电脑来仍然不行,后面再催得紧~~我当时是崩溃的。。
然后请教万能的 度娘,stackoverfolw上有人收是由于升级As后单元测试插件未升级导致的,接下来就找同事没有升级的去打包,不幸的是还是同样的错误,同事告诉说是由于jar包冲突导致
当时项目急着要用,发过测试版就干别的活儿了。此问题暂时放一放……
直到晚上回家,仍然想不通为啥出现这个问题,继续尝试。最后解决问题,出现问题的原因在这里,啥都不说了,看下面的代码吧

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

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

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

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

修改方法 
修改后如下:

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

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

posted @ 2018-10-12 15:19  星辰之力  阅读(901)  评论(0编辑  收藏  举报