當前位置:才華齋>範例>工作總結>

Android開發微信APP支付功能的要點小結講解

工作總結 閱讀(4.37K)

基本概念

Android開發微信APP支付功能的要點小結講解

包名值得是你APP的包,在建立工程時候設定的,需要在微信支付平臺上面設定。

簽名指的是你生成APK時候所用的簽名檔案的md5,去掉:全部小寫,需要在微信支付平臺上面設定。

除錯階段,簽名檔案可以使用除錯用的tore,簽名可以直接在eclipse上面檢視,或者用工具檢視 ,安裝開啟輸入包名即可檢視。

釋出的時候一定需要在微信支付平臺上面設定成釋出用的簽名值。

官方的Demo裡面的內容並不是全是必須的,甚至只需要有就夠了,也不用配置。

的配置和只是為了能夠得到支付回撥,可以先不用去管,先除錯能不能發起支付。

把拷貝到你專案的libs下,並新增jar引用。

程式碼裡發起支付請求:

IWXAPI api = teWXAPI(this, YAPPID);sterApp(YAPPID); // 註冊APPID,這句很重要,不然不會發起呼叫PayReq req = new PayReq();d = d;// 也就是YAPPID,如果二者不一致的話是沒法發起支付的。nerId = tring("partnerid");ayId = tring("prepayid");eStr = tring("noncestr");Stamp = tring("timestamp");ageValue = tring("package"); = tring("sign");//ata = "";// "app data"; // optionalboolean r = Req(req);if(!r) { Text(this,"開啟微信支付失敗!",TH_SHORT)();}

上面的程式碼中相關的預下單ID、簽名、時間戳等都是由服務端返回了,服務端在生成這些值的時候需要注意二次簽名的問題。

正常的話微信客戶端就會開啟支付頁面了,那麼就可以再著手回撥的事情了。

把拷貝到你專案包下的wxapi資料夾中,比如你的包名是,那麼就放到i下面。

設定,讓其支援回撥:

/>

不需要佈局檔案的,或者可以根據你的需要進行佈局。

為了除錯方便,把中onResp的程式碼改為:

@Overridepublic void onResp(BaseResp resp) { Log.d("onPayFinish", "onPayFinish, errCode = " + ode); if(ode==0){ Text(this,"支付成功!",TH_SHORT)(); }else if(ode==-1){ Text(this,"支付失敗!",TH_SHORT)(); }else if(ode==-2){ Text(this,"取消支付!",TH_SHORT)(); }}

不管能不能支付成功,如果onResp的程式碼能夠被自動執行,那麼說明你的裡的配置是對了。

如果你對你的各項引數都很有把穩了(比如你們iOS組的都能支付了,就你Android的還在坑了),那麼看一下sterApp(YAPPID);有沒有,沒錯我就坑死在這裡了,這種情況下第一次(很偶爾)的能夠開啟支付介面一下,後面都不行了。

總結

微信為啥不能給點詳細的錯誤程式碼或者說明之類,就給一個-1,天知道是什麼意思,真讓人不爽。以上就是Android開發微信APP支付功能要點的全部內容,希望本文的內容對大家開發Android能有所幫助。