Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android應用之——微信微博sdk使用過程中的一些常見問題

Android應用之——微信微博sdk使用過程中的一些常見問題

編輯:關於Android編程

前言

最近在使用第三方登錄和分享的過程中遇到了很多問題,一方面可以歸結為自己經驗的不足,另一方面其實也說明了官方文檔的含糊不清。這篇博文不會寫關於如何使用第三方登錄分享,因為官方文檔已經寫明了步驟,這裡要寫的東西是官方文檔裡面沒用說明的一些問題,也是我自己在摸索的過程中發現和解決的問題。


一、微博登錄和分享

微博sdk的集成過程官方下載的sdk文檔中已經基本說明清楚了,這裡不提了,說兩個經常遇到過問題。

1、登錄後停留在授權頁,也就是登錄後沒有返回我們的應用,排除代碼方面的原因後,還有幾個原因導致這個問題的發生。

a.在應用程序的管理中心中沒用填寫應用程序包名和簽名,或者在高級信息裡面沒用填寫oauth2.0授權設置

\


<喎?/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+PGltZyBzcmM9"/uploadfile/Collfiles/20140726/20140726091254102.png" alt="\">

如果這個地方填寫錯誤或者沒用填寫的話,會導致授權後無法返回應用。


b.包名和簽名填寫正確並且填寫了oauth授權頁,還是出現無法返回應用的情況

這個時候就要考慮你的appkey的問題了,博主最開始是跟ios共用一個key的,後來查看官方說明裡面有一條是盡量避免ios和android平台使用同一appkey,因此,又為android重新申請了一個appkey,最後登錄授權完成後就成功的返回了應用。所以遇到各項參數配置正確,代碼正確但是還是無法返回應用的開發者,建議重新獨立申請一個appkey,解決這個問題。

2、第二個問題也是比較常見的,sso package or sign error

這種情況一般是應用程序簽名的問題造成的,首先確認上面的簽名和包名是否填寫正確,包名這個就不用多說了,清單文件中的manifest節點下的package屬性的值就是包名

  這裡著重說一下簽名的問題,因為這個問題也是經常導致出現這個sso package or sign error出現的原因。

簽名的話用的是微博官方提供的簽名工具,這裡有個需要注意的地方:簽名是根據你裝在手機上面的應用來進行的,如果你的應用開發使用的是debug.keystore也就是eclipse默認的方式安裝到手機上的,那麼這個簽名就是不是正式版使用的,如果你最終使用發布應用的時候還使用這個簽名,那麼這個key很顯然是不正確的,就會發現上面的sso package or sign error錯誤。所以如果你的應用最終是要上線的,那麼將apk安裝到簽名導出安裝到手機後,再使用微博官方提供的簽名工具運行一遍,得到簽名,將這個簽名填到管理中心的基本信息中,那麼這個appkey才是合法的,使用不會出現上述的問題。



3、還有一個問題,至今不知道是什麼原因造成的,還要繼續探索。

使用sso登錄的時候,當手機上已經安裝了微博客戶端,會正常調用sso登錄

當手機上沒有安裝微博客戶端時,按照常理應該是調用網頁登錄,但是卻出現了空指針的異常,而且debug會發現對象根本不為空,這個問題一直困擾著我,等找到解決方法了,補充上這一塊。

二、微信第三方登錄和分享


一個很常見的問題:分享的時候如果沒有登錄微信,調出微信登錄窗口,正確登錄後點擊分享無反應。

這個問題查了下,發現很多人出現了。最終,經過排查,確認是申請的appkey信息有誤造成的。

其實這個問題也是簽名的錯誤的原因造成的,debug.keystore和發布的keystore不同導致了這個問題。

在使用微信官方提供的簽名工具獲取應用簽名的時候,要首先在手機上安裝有用發布keystore簽名的應用,然後得到的簽名才是正確的簽名,簽名正確了使用appkey才不會出現上面的無法分享或者登錄的問題。



  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved