關(guān)于android中的第三方平臺(tái)接入一直是一個(gè)讓人又愛又恨的東西,令人應(yīng)接不暇的各種平臺(tái)都說自己整合的好,方便,但是著手用了之后,各種問題都來。網(wǎng)上一般看到最多的移動(dòng)開發(fā)者服務(wù)平臺(tái)有友盟,ShareSDK,以及Avos Cloud,這幾個(gè)平臺(tái)我都有使用過,都有自己的優(yōu)缺點(diǎn),這個(gè)就最近使用的Umeng來進(jìn)行一點(diǎn)坑的挖掘。
關(guān)于Umeng,就它的對(duì)功能的整合程度,已經(jīng)算是很不錯(cuò)的了,常見的第三方平臺(tái)都能看見,具體的怎么使用就不用說了,文檔可以直接戳這里。
下面我主要說一下我遇到的坑
1.關(guān)于人人網(wǎng)一直顯示invalid redirect_ui
如果你是使用的Umeng作為集成SDK,官方說要填寫正確的redirect_uri,但是這樣問題是無法解決的,這里要將應(yīng)用的基本信息中的根域名設(shè)置為* sns.whalecloud.com*
2.關(guān)于QQ空間分享中的網(wǎng)址鏈接到Umeng
這個(gè)是Umeng的默認(rèn),這里需要設(shè)置 QZoneShareContent的setTargetUrl這里的Url設(shè)置為你想跳轉(zhuǎn)的網(wǎng)址即可
3.為什么我的微信分享怎么點(diǎn)都沒有反應(yīng),既不報(bào)錯(cuò)也不出現(xiàn)分享窗口
這個(gè)最可能的問題就是你沒有設(shè)置好微信平臺(tái)上的包名以及應(yīng)用簽名,好好看一下簽名,直接從IDE上面裝到手機(jī)上與簽名打包后的簽名是不一樣的
4.代碼混淆后出錯(cuò)(下面的摘自Umeng的常見問題,也寫在這兒)
一般我們使用分享可以看見Umeng提供的混淆代碼,但是如果你還使用Umeng提供的其他功能,這些代碼就不能完全幫到你了。你可能需要下面的:
-keepclassmembers class * {
public <init>(org.json.JSONObject);
}
-keep public class [您的應(yīng)用包名].R$*{
public static final int *;
}
把[您的應(yīng)用包名] 替換成您自己的包名,如com.yourcompany.example。如果您使用5.0.0及以上版本的SDK,請(qǐng)?zhí)砑尤缦旅睿?/p>
-keepclassmembers enum * {
public static **[] values();
public static ** valueOf(java.lang.String);
}
5.騰訊開放平臺(tái)申請(qǐng)時(shí)千萬(wàn)注意申請(qǐng)的是什么
如果是游戲,請(qǐng)注意你的包名,騰訊為了保障自己的利益,包名統(tǒng)一為com.tencent.tmgp.XXXX,如果在你代碼寫完準(zhǔn)備上架,發(fā)現(xiàn)包名不對(duì),不僅僅麻煩,而且繁瑣的過程十分影響心情。這里如果你的軟件都是簡(jiǎn)單的只想集合QQ分享功能的,建議為軟件,這樣可以省去很多的事情。