之前没有使用代码混淆的时候,ShareSDK可以正常使用,点击自定义的按钮,弹出九宫格分享菜单。但是今天使用了代码混淆,测试部发聩分享功能无法使用,测试了一下,还真是不能使用,是可以弹出九宫格,但是里卖弄没有任何平台信息。查看了一些资料,猜测估计是代码混淆搞的,自己尝试着在proguard-project.txt文件中添加下面的代码:
#shareSDK
-keep class cn.sharesdk.**{*;}
-keep class com.sina.**{*;}
-keep class **.R$* {*;}
-keep class **.R{*;}
-dontwarn cn.sharesdk.**
-dontwarn **.R$*
-keep class m.framework.**{*;}
再次打包签名,在手机上测试了一下,问题果然解决了,看来使用proguard-project.txt文件进行代码混淆的额外配置时,不能乱使用。有些额外配置时必须添加的,有些是可以选择添加的,ShareSDK混淆规则是必须添加的,否则,将会使用android proguard默认的混淆规则,导致一些错误,必须重写规则进行覆盖。