需求;
1.最近公司使用三方登陸,分享。接觸到qq,微信,微網誌等三方機構的借口sdk
2. 之前做了一段時間,沒有進行總結。做這個功能的時候,折騰的不行,沒有之前的任何經驗,做的時候,心裡沒底
3.這篇文章是解決問題後的心得,也是對自己工作的肯定。
建議:做這個的時候,必須弄懂官方的文檔。然後下載下傳官方提供的demo 跑一下。不是為了讓一下就懂。而是讓自己有的大緻的方向。做出來是什麼樣子。找點自信。
這點很重要。
1.先說qq登陸方面的,
1,首先得到qq互聯上面,注冊,建立應用, 獲得appid 密碼等。
使用qq登陸功能項目必修通過稽核并且處于上線狀态

處于這個狀态就算可以進行測試。qq登陸了。(我們的應用是按時釋出。是以上面顯示稽核中...這點不必糾結,qq互聯有的好的功能。就是自動化測試,可以生成文檔。減少稽核時間)
我遇到的問題,最多的就是粗心。之前一個同僚。搞了一段時間弄不通。也排查不出來錯誤。最後我接手排查了一整天。最後原因竟然是包名中的 " . " ---> , 就是 頓号
寫成了逗号了。相信大家不會犯這樣的錯誤
另一個是之前不懂。直接把debug 包,預設簽名傳上去了。之後傳上一個正式包。結果可想而知。包名沖突。無法通過稽核,找客服,排查簽名不正确。更改簽名,需要的手續比較多,而且據說隻會幫助處理兩次。超過兩次。可能需要有償了。千萬不要為了友善,吧預設簽名傳到qq互聯上面。
-------
為什麼沒有貼具體的實作代碼。很簡單。官方文檔裡面已經非常詳細的給我們列出來了。直接粘裡面。就可以跑。隻要記住 app中想接入 qq登陸。app必須通過稽核。記住這點。做出來一點問題也沒有。
微網誌綁定:
微網誌綁定必須的條件
1.應用的簽名資訊和注冊到微網誌三方接口上的簽名需要保持一緻,
2.使用 jdk 中自帶的 keytool 檢視 ,具體書寫方式,見網上 ---如果打開debug,keystore 密碼是android 這個我找了好久啊
3.微網誌可以設定幾個簽名務必将debug簽名注冊上面,這樣才可以調試,否則綁定不成功。
如圖( 上面簽名是正式的簽名 ---下面是debug簽名。釋出之前使用的--很重要。不然簽名不對。下面肯定拿不到 access-token)後面的步驟就走不下去了
4.微網誌 具體檢視 微網誌官方文檔,具體的連結位址稍後我會貼出來。
http://michaelye1988.iteye.com/blog/1637951
5.回想一下 難點也是有幾個。按照官網上提供的 開發文檔進行設定。基本了解,就可以做出來了。
我遇到的問題。sso認證時候,總是無法擷取到access_token 最後解決原因是onActivityResult()回調沒有按照文檔上面說的,
項目中使用的是fragment 原來以為fragment中複寫的 onactivityresult() 就可以接收到回調。 檢視 官方文檔 規定是在activity中複寫 onactivityresult()。結果回調接口不
觸發,就一直卡在哪裡。 原因找到了,解決自然是時間上的問題了。
有兩種方法可以解決這個問題
1. 比較直接 的方法是将fragment 改成activity 然後複寫 onactivityresult() 接收回調
2.在fragment依附的activity onActivityresult()中調用子fragment的onActivityResult() --在主activity中使用給fragment添加tag ,然後通過
fragmentmanage.findfragmenttag() 得到fragment,然後間接的得到fragment 對象調用 fragment中的 onActivityResult()。為什麼這樣調用,因為我們是在fragment中初始
化sso對象的 在 是在activity的onactivityreslut()中調用sso的回調。是以需要這樣處理。
網上關于qq 登陸和微網誌登陸例子很多,這裡隻是,将自認為注意的點,寫出來,供用到的同學。參考