Android 项目混淆系列2

这篇接着上篇,上篇文章已经大概介绍了一些常见的坑,以及需要混淆的地方,这篇文章是对上篇的补充,也是最近碰到的一些坑。
首先,讲一下这次遇到的坑,就是环信的。开始已经按官方的混淆,结合网上的一些文章做的混淆,代码如下:
-dontwarn com.easemob.**
-keep class com.easemob.** {*;}
-keep class org.xmlpull.** {*;}
-keep class com.squareup.picasso.* {*;}
-keep class com.hyphenate.* {*;}
-keep class com.hyphenate.chat.** {*;}
-keep class org.jivesoftware.** {*;}
-keep class org.apache.** {*;}
如果使用easeui库,需要这么写
-keep class com.hyphenate.easeui.utils.EaseSmileUtils {*;}
2.0.9后加入语音通话功能,如需使用此功能的api,加入以下keep
-dontwarn ch.imvs.**
-dontwarn org.slf4j.**
-keep class org.ice4j.** {*;}
-keep class net.java.sip.** {*;}
-keep class org.webrtc.voiceengine.** {*;}
-keep class org.bitlet.** {*;}
-keep class org.slf4j.** {*;}
-keep class ch.imvs.** {*;}
-keep class com.easemob.** {*;}
环信3.0
-keep class com.hyphenate.** {*;}
-dontwarn com.hyphenate.**

但是在打包后,总是启动失败,这是很头疼的问题,可能大部分人会想到去写段代码去服务器看错误日志,这里教大家一个小技巧,其实我们不用那么麻烦,只需要用一个root的手机,把日志打开,同时在打包的时候也记得把自己项目的日志打开,在
日志指示器
输入自己的包名,然后就可以查看到报错信息了,之后我就发现是我的环信出了问题//初始化
EMClient.getInstance().init(this, options);

然后就在网上寻找答案,最后是发现还需要加一行混淆代码:

    -keep class com.superrtc.** {*;}

完整如下:

###-----------------环信-------------------#######
-dontwarn  com.easemob.**
-keep class com.easemob.** {*;}
-keep class org.xmlpull.** {*;}
-keep class com.squareup.picasso.* {*;}
-keep class com.hyphenate.* {*;}
-keep class com.hyphenate.chat.** {*;}
-keep class org.jivesoftware.** {*;}
-keep class org.apache.** {*;}
#如果使用easeui库,需要这么写
-keep class com.hyphenate.easeui.utils.EaseSmileUtils {*;}
#2.0.9后加入语音通话功能,如需使用此功能的api,加入以下keep
-dontwarn ch.imvs.**
-dontwarn org.slf4j.**
-keep class org.ice4j.** {*;}
-keep class net.java.sip.** {*;}
-keep class org.webrtc.voiceengine.** {*;}
-keep class org.bitlet.** {*;}
-keep class org.slf4j.** {*;}
-keep class ch.imvs.** {*;}
-keep class com.easemob.** {*;}
#环信3.0
-keep class com.hyphenate.** {*;}
-dontwarn  com.hyphenate.**
-keep class com.superrtc.** {*;}

问题解决~~
下面附上一些常见的第三方开源项目的混淆

# OkHttp3
-dontwarn okhttp3.logging.**
-keep class okhttp3.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值