前言
最近在改微信分享和QQ分享的插件, 遇到一些比較奇葩的問題, 特此記錄.
關(guān)于QQ分享
問題一: 點擊QQ分享出現(xiàn)"非官方應(yīng)用(錯誤碼:901102)appid=xxxxxx"
解決思路:
- 核對簽名信息是否匹配(此思路適合首次集成出現(xiàn))
- 參考鏈接 , 加強QQ互聯(lián)移動應(yīng)用 Android包名和 iOS Bundleid 校驗的通知
(此方案適合舊版本沒有出現(xiàn), 更新了版本出現(xiàn))
問題二: 點擊QQ分享,出現(xiàn)閃退的情況
解決方案: 可能是由于沒有適配httpclient, 以下給出適配方案
- 主module或集成分享的module中 清單文件中加入以下代碼,
<uses-library
android:name="org.apache.http.legacy"
android:required="false" />
具體位置如下:

image.png
- 2.在主module或集成分享的module的build.gradle文件的android節(jié)點下加入:
useLibrary 'org.apache.http.legacy'
具體位置如下:

image.png
關(guān)于微信分享問題
問題1: 點擊微信分享,點擊好友頭像,出現(xiàn)無反應(yīng)的情況
解決思路:
- 核對簽名信息是否一致
由于分享需要在Release版本進行測試,所以簽名信息需要核對.
- 如果在debug版本(
debug其實可以攜帶正式版本的簽名打包)測試正常, 在release版本無反應(yīng),
case 1: 核對簽名信息是否一致,
case 2: 是否有配置以下混淆
-keep class com.tencent.mm.sdk.** {
*;
}
-keep class com.tencent.mm.opensdk.** {
*;
}
-keep class com.tencent.wxop.** {
*;
}
-keep class com.tencent.mm.sdk.** {
*;
}
本次記錄,僅作記憶備份.