Android微信支付SDK

最近在做一個有關微信支付的一個項目,所以在此總結一下微信支付sdk接入的問題,爲以後再次遇到此問題做個範例。
首先我們需要準備以下資源:
1).微信支付的AppId
2).微信依賴的Jar包
3).Activity類——>WXPayEntryActivity.java(可以從微信Demo中copy過來)

調起微信支付界面:
請求參數:
請求參數

微信支付最主要的就是我們將參數給傳遞過去,發起支付的流程,提交訂單的時候的參數根據項目需要配置。

下面代碼就是調起微信支付:

PayReq req = new PayReq();
  // 測試用appId
req.appId = json.getString("appid");
req.partnerId = json.getString("partnerid");
req.prepayId = json.getString("prepayid");
req.nonceStr = json.getString("noncestr");
req.timeStamp = json.getString("timestamp");
req.packageValue = json.getString("package");
req.sign = json.getString("sign");
req.extData = "app data"; // optional

Toast.makeText(PayActivity.this, "正常調起支付",Toast.LENGTH_SHORT).show();

// 在支付之前,如果應用沒有註冊到微信,應該先調用IWXMsg.registerApp將應用註冊到微信

api.sendReq(req)

回調如下:
返回結果:
返回Code碼
<1>WXPayEntryActivity這個類是在你調起微信支付完成支付(或取消或失敗)後,再回到你的App時會調用的一個頁面。還需要注意的是這個類文件的路徑
<2>若不需要回調的那個頁面可以將onCreate方法裏的setContentView(R.layout.pay_result) 給注掉。
<3>回調結果裏Demo給了一個彈窗,咱們如果不需要,也可以修改爲如下:

    public void onResp(BaseResp resp) {
        if (resp.getType() == ConstantsAPI.COMMAND_PAY_BY_WX) {
            if(resp.errCode==0){
                //支付成功
            }
            finsh();
        }
    }

目前,我只做到這麼多,等後續發現問題會及時更新的。

發佈了37 篇原創文章 · 獲贊 47 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章