android微信支付

2021-06-25 08:04:50 字數 2701 閱讀 8510

****************************************==

1,開啟

3,示例

發布使用的簽名正確的話取消和成功都能正確通知.

2,測試時使用weixindemo中的debug_keystore; 3,

需要注意應用要通過審核,並且幾個key值正確

// 商家向財付通申請的商家id */

****************************************==

第一步,獲取accesstoken,accesstoken值第二步要用;

private class getaccesstokentask extends asynctask

@override

protected void onpostexecute(wxgetaccesstokenresult result) } }

解析伺服器響應

private wxgetaccesstokenresult getaccesstoken() 

string content = new string(buf);

result.parsefrom(content);

return result;

}

private class getprepayidtask extends asynctask

@override

protected void onpostexecute(wxgetprepayidresult result)

} }

組裝引數

private wxgetprepayidresult getprepayid(wxgetaccesstokenresult accesstokenresult) 

string content = new string(buf);

result.parsefrom(content);

return result;

}

post給伺服器
private void sendpayreq(wxgetprepayidresult result)

package net.sourceforge.simcpux.wxapi;

public class wxpayentryactivity extends activity implements iwxapieventhandler

}

}

****************************************==

暫時沒想到其他想說的,先看個效果

2,組裝資料,規則在文件中有說明

//package_ 字段生成方法

//package生成方法:

//a)對所有傳入引數按照欄位名的ascii 碼從小到大排序(字典序)後,使用url 鍵值對的格式(即key1=value1&key2=value2…)拼接成字串string1;

//b) 在string1 最後拼接上key=partnerkey 得到stringsigntemp 字串, 並對 stringsigntemp進行md5 運算,再將得到的字串所有字元轉換為大寫,得到sign值signvalue。

//c)對string1 中的所有鍵值對中的value 進行urlencode 轉碼,按照a 步驟重新拼接成字串,得到string2。對於js 前端程式,一定要使用函式encodeuricomponent 進行urlencode編碼(注意!進行urlencode時要將空格轉化為%20而不是+)。

//d)將sign=signvalue 拼接到string1 後面得到最終的package 字串。

//b)對所有待簽名引數按照欄位名的ascii 碼從小到大排序(字典序)後,使用url 鍵值對的格式(即key1=value1&key2=value2…)拼接成字串string1。 注意:所有引數名均為小寫字元

//c)對string1 作簽名演算法,欄位名和字段值都採用原始值,不進行url 轉義。具體簽名演算法為sha1

3,對應的支付介面

android微信支付

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

android微信支付

post請求的使用場景 信開發平台建立時需要 簽名,包名,圖示 其中需要2個圖示 數字摘要 是指通過演算法將長資料變為短資料,通常用來標識資料的唯一性,是否被修改,常用的 md5由於具有不可逆性,也被用來作為密碼加密,並且通常情況下為了讓加密過程變的不可 我們會進行加鹽操作,如下 sha1也不可逆,...

Android 微信支付

一般將這些資訊寫在乙個常量類裡面方便維護,如下 public calss wechatconstants可根據專案需求替換以上引數值供自己使用。描述 只需要定義 key,value 即可。public class wechatpaybean public k getkey public void s...