編輯:關於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才不會出現上面的無法分享或者登錄的問題。
說到 NDK 開發,其實是為了有些時候為了項目需求需要調用底層的一些 C/C++ 的一些東西;另外就是為了效率更加高些。 但是很多時候能不用就不用;這個是啥
資源是好不容易下載到的,關於代碼,沒什麼好說的。 說點這期間遇到的問題。 漫畫 的每一話大概有20幾個頁面,實際都是jpg圖片,
前言本文是通過閱讀各種文章及代碼,總結出來的,其中難免有些地方理解得不對,歡迎大家批評指正。顯示系統基礎知識定義在一個典型的顯示系統中,一般包括CPU、GPU、displ
業余時間充足,於是想弄點自己的東西,找來找去還是回到當初感興趣的VR。目前好像沒有太多關於VR方面的教程,於是有了寫‘學習筆記’的想法。說干就干~