Android整合微信支付

2021-07-24 17:25:52 字數 2564 閱讀 7420

總要說兩句

public

class

wxpayentryactivity

extends

activity

implements

iwxapieventhandler

@override

protected

void

onnewintent(intent intent)

@override

public

void

onreq(basereq req)

@override

public

void

onresp(baseresp resp)

}

android:name=".wxapi.wxpayentryactivity"

android:exported="true"

android:launchmode="singletop"/>

public

class

extends

broadcastreceiver

}

intent-filter>

receiver>

public

boolean

if (mwxapi == null)

return

false;

}}

(因為我的專案是在後台服務端生成,所以這步暫時不寫,後面再補上。)

5、發起支付

payreq request = new payreq();

request.partnerid = "收款方商戶id";

request.prepayid= "預支付訂單id";

request.packagevalue = "sign=wxpay";//死值

request.noncestr= "隨機字串";

request.timestamp= "當前時間戳";

request.sign= "簽名";

boolean checkargs = request.checkargs();

if(checkargs )

sortedmap<

string, string

>

map=

new treemap<

string, string

>();

mapmap

.put("partnerid", "***");

map.put("prepayid", "***");

map.put("package", "***");

map.put("noncestr", "***");

map.put("timestamp", "***");

stringbuilder sb =

new stringbuilder();

set ese =

map.entryset();

iterator it = es.iterator();

while(it.hasnext())

+"api_key");

return md5util.encode(sb.tostring());//最終的sign

6、新增混淆配置

-keep class

com.tencent.mm.sdk.**

@override

public

void

onresp(baseresp resp)

}

因為我們最終要把支付結果傳到我們自己的activity中,所以我使用者了localbroadcastmanager 。

resp.errcode就是支付結果,0成功,-1失敗,-2取消。

8、接受broadcast

private localbroadcastmanager mlocalbroadcastmanager;

private broadcastreceiver receiver = new broadcastreceiver()

};mlocalbroadcastmanager = localbroadcastmanager.getinstance(this);

mlocalbroadcastmanager.registerreceiver(receiver, new intentfilter("wxpayresult"));

@override

protected

void

ondestroy()

今天先記錄這麼多,過兩天我再優化一下細節的地方。

thank you~

Android 整合微信支付詳解

申請通過,填寫 資料審核 審核通過如下 param ordertype 附加引數,不傳為null。不能為 this.mch id mch id this.api key api key this.orderon orderon this.productfeename productfeename t...

android微信支付

1,開啟 3,示例 發布使用的簽名正確的話取消和成功都能正確通知.2,測試時使用weixindemo中的debug keystore 3,需要注意應用要通過審核,並且幾個key值正確 商家向財付通申請的商家id 第一步,獲取accesstoken,accesstoken值第二步要用 private ...

android微信支付

builder.settitle 提示 builder.show 現在說一下支付結果返回 1的問題,這個問題真是糾結了好久啊,如果你是按照上面的步驟來的話還出現 1的話,原因只有兩個 1.可能是後台返回給你的引數不正確導致支付失敗,後台調起預支付介面的時候要注意中文亂碼問題,二是注意總金額是int型...