Android編程之微信SDK分享功能過程步驟詳細分析
本文實例講述了Android編程之微信SDK分享功能過程步驟詳細分析。分享給大家供大家參考,具體如下:
之前已經(jīng)分析過怎么用官方的demo分享微信信息了,在這里我就不再多說,其中關(guān)于在自己應(yīng)用分享說得很簡單,本文作者也是經(jīng)過一番折騰才弄成功,為了以后讓大家都少走彎路,決定在這里從頭到尾介紹怎么在自己的應(yīng)用中分享功能
注意:順序不能亂?。?/p>
1、建立自己的應(yīng)用 TestShareWX
(1)應(yīng)用包名是com.freeson.test,然后建立一個測試Activity,名字為TestActivity,里面有一個Button和EditText
(2)運行程序,請記住此時你編譯運行的時候,用的是android默認的debug.keystore簽名的。
2、到官網(wǎng)http://open.weixin.qq.com/download/?lang=zh_CN下載開發(fā)工具包,解壓,將libammsdk.jar復(fù)制到libs中,并將其add到build path中。
3、到官網(wǎng)http://open.weixin.qq.com/agreement登記你的應(yīng)用,
這里省去前面那些基本的操作 ,這里要注意以下的步驟。
其中有一步是要用個簽微信那名的apk工具對我們程序進行簽名的,因為我們的程序已經(jīng)安裝了,所以直接下載安裝,然后在手機里面的那個框框輸入包名(我這里是com.freeson.test,包名不能填錯哦),點擊生成按鈕,這時候會生成一個md5值,將其輸入到登記頁面的框中(此時我們注意,如果我們的應(yīng)用程序還沒有安裝到手機中的話,簽名工具會提示沒有找到相關(guān)包說明的,這時候我們有意識到什么了嗎?)
再接下來輸入包名(我這里是com.freeson.test,包名不能填錯哦),然后提交審核。接下來就是等微信的MM進行審核了。
4、在步驟三中我們已經(jīng)拿到了appid,按照sdk Demo里面的提供方法在我們的TestActivity測試,OK一切成功,是否有感覺成就感呢。
5、碼農(nóng)的日子還真TM難過啊,我加班碼啊碼啊,日子一天天過去,項目開發(fā)到最后了,經(jīng)過測試,一切正常,用正式簽名的文件對來正式打包。然后再測試。OH,my god,What Happened?。?!,為什么剛剛還能分享微信的,現(xiàn)在點擊居然沒有反應(yīng)了。頓時陷入惶恐中。。。。不要怕,我來告訴你為什么會這樣。
6、其實在第一步的時候,就已經(jīng)說了,我們在官網(wǎng)申請的AppId的時候填寫應(yīng)用程序簽名也是就是用debug.keystore生成的。然而我們此時在手機里面運行的apk是用我們自己生成的簽名(xxx.keystore)進行簽名的,兩個簽名都不一致,所以很理所當然會導(dǎo)致分享失敗。因為微信要對我們應(yīng)用進行一個驗證,就是通過這個簽名來認證的。
7、別擔心,還有補救的方法,用我們正式那個簽名文件xxx.keystore對程序進行正式的打包,然后安裝到手機中,然后再次運行微信那個簽名apk工具,講我們的包名輸入到里面,重新生成一個MD5的簽名,然后到官網(wǎng)http://open.weixin.qq.com/agreement,找到你之前等級那個應(yīng)用,拉到最后,點擊修改,將剛剛生成的那個簽名輸入到里面,然后保存重新提交審核。
8、做完上面的事情之后,所要做的就是等剛剛重新提交的修改通過審核,要不然你的微信就不能分享成功。
9、某一天,登記的那個應(yīng)用通過審核了,運行我們打包的程序,點擊微信,oh ,yes。發(fā)現(xiàn)能分享了,終于可以喘一口氣了。
備注:
在弄分享過程中,本文作者也遇到了很多問題,在這里和大家說說,讓大家以后稍微注意。
1、還是簽名問題,一個項目,幾個人完成的話,如果大家都是用各自默認的debug.keystore進行運行的話,在debug版本,微信分享功能肯定只有在申請的微信appid的那臺機器生產(chǎn)的apk才能正常。
2、關(guān)于微信分享信息結(jié)果反饋,這個要注意的是以下兩點,要不要肯定是不會收到分享反饋的。
(1)這個Activity的名字一定是WXEntryActivity
(2)WXEntryActivity這個類一定是建立在 應(yīng)用包名+wxapi包下(比如上述的工程,這時候包名應(yīng)該是com.freeson.test.wxapi)
寫到這里,終于到結(jié)束了,本文作者也是折騰了蠻久才明白微信的認證原理的。一句話,理解簽名很重要。
希望本文所述對大家Android程序設(shè)計有所幫助。
相關(guān)文章
基于Flutter實現(xiàn)動態(tài)高斯模糊的流程步驟
一個App加上高斯模糊會形成一種高級的感覺,本文將介紹如何制作一個根據(jù)背景內(nèi)容來動態(tài)高斯模糊,文中有詳細的代碼實現(xiàn)步驟,代碼示例講解的非常詳細,具有一定的參考價值,需要的朋友可以參考下2023-11-11
Android開發(fā)之進度條ProgressBar的示例代碼
本篇文章主要介紹了Android開發(fā)之進度條ProgressBar的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-03-03
Android應(yīng)用中使用SharedPreferences類存儲數(shù)據(jù)的方法
這篇文章主要介紹了Android應(yīng)用中使用SharedPreferences類存儲數(shù)據(jù)的方法,SharedPreferences使用鍵值對應(yīng)的方式進行存儲,使用于少量的數(shù)據(jù)保存,需要的朋友可以參考下2016-04-04
Android Studio 實現(xiàn)文檔注釋的快捷鍵
這篇文章主要介紹了Android Studio 實現(xiàn)文檔注釋的快捷鍵,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03
android基于ListView和CheckBox實現(xiàn)多選和全選記錄的功能
本篇文章主要介紹了android基于ListView和CheckBox實現(xiàn)多選和全選記錄的功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2016-11-11
Android編程使用緩存優(yōu)化ListView的方法
這篇文章主要介紹了Android編程使用緩存優(yōu)化ListView的方法,涉及ListView針對sd卡緩存及內(nèi)存緩存的優(yōu)化技巧,需要的朋友可以參考下2015-12-12

