如何應用QQ分享

但凡應用,或多或少總會涉及到社交,當前最爲常用的社交手段有QQ,微信,微博幾種,它們的公司也都有相應的開放平臺於開發者的需求。開發者可以在自己的應用中集成它們的部分功能,只需要下載和使用這些公司開發的SDK就行了,下面簡要說說騰訊開放平臺上使用QQ分享功能的實現。

首先要在騰訊開放平臺的網站上註冊開發者帳號:open.qq.com。註冊成功之後需要填寫一些信息和資料,首先要通過實名認證,上傳個人身份證的正反面,通過這一步帳戶資料完善程度就可以達到75%,這時候就可以創建應用了。同樣的,填寫和上傳應用相關的資料,完成之後可以在移動應用管理中看到自己創建的應用,點擊查看應用就可以看到所創建應用的一系列信息,其中對於開發而言關鍵的是AppId和AppKey這兩個字串,得到appId之後就可以進行開發集成工作了。

此時去開放平臺的資料庫下載SDK,所謂SDK,英文是Software Development Kit,軟件開發工具包的意思,SDK一般附帶說明文檔,不過騰訊的SDK比較簡陋,也可能是功能太多,不便於在文檔中作完全的說明,總之我覺得這樣並不好,對於開發人員沒有很好的指引作用。QQ相關的SDK調用和說明文檔並不在下載的SDK中,而是在網頁上展示,對於開發者的指引並不人性化,更新速度也不快,很多內容都是已經過時了的。不過即便這樣,我們還是能在上面找到相關API的調用方法的。

下載到SDK開發包之後,裏面的內容一般包含示例程序,SDK庫和一些文檔,騰訊的文檔沒什麼可讀的,就不多說了,去相關網頁閱讀即可。然後看示例程序,照着示例程序,稍微查看一下API調用說明就能簡單使用SDK了。

Android Studio中,將庫複製到libs文件夾下,“Add as library”,build一下就添加了類庫,如果有C語言編譯成的so文件,則放到相應的armeabi,mips,x86文件夾下。添加類庫之後,還要在Manifest文件中添加相關的屬性,因爲很多喚起的界面都是SDK中的Activity,所以需要在Manifest中註冊,根據SDK調用需求和示例程序中的樣子在Manifest中註冊,此後就可以在代碼中調用SDK的API了。

調用QQ的SDK功能,關鍵是需要一個Tencent對象,Tecent對象的創建需要一個Context對象,雖然說是上下文對象,但我覺得最好是Activity,畢竟涉及到調用結束返回界面的回調。


得到Tencent對象之後,下一步需要自定義一個接口,這個接口裏面定義調用API的返回事件,繼承自

IUiListener.

完成上述操作後就可以利用Tencent對象來做很多事情了,由於QQ本身集成的功能很多,所以SDK也可以實現裏面的大多數社交動作,例如分享到QQ好友或QQ羣:


其中,title是放分享的標題,summary放的是分享的內容摘要,target_url是分享的跳轉鏈接,image_url是分享圖片的鏈接,app_name是分享來自的應用名稱,SHARE_TO_EXT_INT表示是否在分享的同時也發佈到QQ空間。這樣就完成了應用中集成QQ分享的功能。

除了分享圖文外,還有分享音樂,圖片,純文本和應用等,都是一樣的道理,值得注意一點的是QQ授權登錄,即三方登錄功能,我們瀏覽網頁的時候經常看到需要註冊帳號的地方往往有一個通過QQ或者新浪帳號登錄的按鈕,其實這個按鈕就是使用QQ號或者新浪帳號登錄三方應用或者網站。但實際上當我們輸入QQ或者新浪的帳號和密碼之後,並不能像真正的會員一般登錄了,還是需要經過一系列的綁定或者註冊操作才能正常使用。

三方登錄的原理並不是三方網站或者應用獲取到了騰訊或者新浪的帳號密碼,並建立起關聯,而是請求騰訊或者新浪的授權 ,從中獲取到一些有關QQ號或者微博號的一些信息,通過這些信息取得用戶的認證,並在後臺服務器開啓帳號和權限的過程。

對於QQ而言,實現登錄功能時,通過調用Tencent的方法,傳入三個參數


this是一個上下文對象,"all"是SCOPE,表示授予的權限,all表示所有權限,listener正如前面的,是一個返回結果監聽器。登錄成功之後會返回一個token,客戶端將token發給自己的服務器,然後服務器和騰訊的服務器進行驗證,通過之後就可以獲取和該QQ號關聯的信息,並在三方應用自己的服務器給予會員權限,這樣就實現了QQ號登錄三方應用的功能。


除了騰訊的SDK外,還有很多其他的SDK,使用方法大同小異,基本上都是按照說明使用就可以正常進行,沒什麼難度可言。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章