微信平臺(tái)開放后倒是挺火的,許多第三方應(yīng)用都想試下接入微信這個(gè)平臺(tái),畢竟可以利用微信建立起來的關(guān)系鏈來拓展自己的應(yīng)用還是挺不錯(cuò)的,可以節(jié)約很多在社交方面的開銷,我最近由于實(shí)習(xí)需要也在研究這個(gè)東西,不過發(fā)現(xiàn)網(wǎng)上的相關(guān)資料還是挺少的,這里把我的整個(gè)研究情況給出來,希望可以共同學(xué)習(xí)。
一、微信SDK中會(huì)用到主要類的類圖
上面這張類圖中顯示的是與微信通信過程中的請(qǐng)求類和響應(yīng)類,第三方應(yīng)用通過他們
附帶的message字段來攜帶消息傳輸給微信進(jìn)程。其中BaseResp有個(gè)內(nèi)部類是ErrCode,
它里面定義了幾個(gè)常量字段,當(dāng)我們向微信發(fā)送請(qǐng)求后它會(huì)作為返回字段
返回到我們的應(yīng)用中來,我們可以根據(jù)這個(gè)做相應(yīng)的處理,在后面的時(shí)序圖中將會(huì)提
到。接下來就是SDK中的message對(duì)象了。
上面這個(gè)類圖主要是消息對(duì)象,里面有一個(gè)字段來引用媒體對(duì)象,這些媒體對(duì)象就
是我們所能傳給微信的對(duì)象。有了消息對(duì)象和媒體對(duì)象,接下來要給出的就是將消
息對(duì)象送出去的通信類了。
上面的IWXAPI就是所說的通信類,所有與微信進(jìn)行通信的工作都是他在做,而他的
生成是由下面的工廠類來完成。旁邊的IWXAPIEventHandler接口是需要第三方應(yīng)用
來實(shí)現(xiàn)的,如果我們想處理微信的請(qǐng)求信息或是我們向他發(fā)請(qǐng)求后他返回的標(biāo)識(shí)字段。
二、第三方應(yīng)用與微信通信的時(shí)序圖
1、向微信發(fā)送消息
應(yīng)用只需要進(jìn)行一次注冊(cè)就行了,然后在以后的使用中只需要封裝消息,讓通信類
發(fā)送即可。從前面的類圖中可以看到,封裝消息的順序是首先生成需要發(fā)送的媒體
對(duì)象,然后將媒體對(duì)象附加到消息對(duì)象中,接著建立請(qǐng)求對(duì)象,最后使用通信類發(fā)
送即可。代碼如下所示:
下面給出幾張效果圖:
程序進(jìn)入后
注冊(cè)后載點(diǎn)擊發(fā)送,微信給出好友列表
選擇一個(gè)好友,出現(xiàn)附加的消息編輯界面,可不填任何東西
點(diǎn)擊share,可返回第三方應(yīng)用,同時(shí)在好友微信中會(huì)收到所發(fā)消息
這里補(bǔ)充一點(diǎn)就是圖中的框框就是微信自己定義的消息對(duì)象顯示外表,非第三方應(yīng)用定義,與上一張圖對(duì)比即可知道。
暫時(shí)這個(gè)就說到這,好像這個(gè)博客一篇扛不住那么多東西啊,剩下的在后面的文章中給出,謝謝。
因?yàn)槲易约簩懙膁emo都在實(shí)習(xí)結(jié)束后丟失了,所以給一個(gè)官方的demo下載,如果有不清楚的可以交流,謝謝合作,希望共同學(xué)習(xí)。
|
新聞熱點(diǎn)
疑難解答
圖片精選