场景:
开发app 需要设置debuggable false
以及 打开代码混淆 minifyEnabled true
问题:
原本可以用的功能,结果不能用了
例子:
ftp传输功能,设置debuggable false
并且打开代码混淆 结果输入ftp连接,竟然无法连接
如果debuggable 设置为true ,代码开了混淆,发现功能就正常了;
如果debuggable 设置为false,代码不开混淆,发现功能也正常;
这时候我就很无措,不知道怎么解决,因为这样的情况,我觉得不是混淆的锅,是debuggable的锅,上网找了很久没有找到解决办法。
后来,经过两位师傅的指导,说从混淆上找问题,因为只有这个是突破口。
解决:
我打开External Libraries
从这里看,是不是外部的代码被我混淆了;
因为ftp 相关的代码是和org 开头相关的,我就先从org 开头的开始防混淆,结果试到最后,发现是这部分代码被混淆了
与这部分相关的防混淆代码加入后,ftp就可以正常连接了。
-keep class org.slf4j.** { *; }