WxPayManager.java
2.95 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
package com.chudiangameplay.android.wxapi;
import android.content.Context;
import com.chudiangameplay.android.bean.WXPayParam;
import com.tencent.mm.opensdk.modelpay.PayReq;
import com.tencent.mm.opensdk.openapi.IWXAPI;
import com.tencent.mm.opensdk.openapi.WXAPIFactory;
import org.json.JSONException;
import org.json.JSONObject;
/**
* Created by Administrator on 2016/11/16.
*/
public class WxPayManager {
//微信支付 data为支付参数 type = 1为商品用微信支付 =2 为 零钱用微信支付
public static boolean wxPay(Context context,WXPayParam param){
IWXAPI api = WXAPIFactory.createWXAPI(context, Constants.APP_ID);;
api.registerApp(Constants.APP_ID);
PayReq request = new PayReq();
request.appId = param.appId;
request.partnerId = param.partnerId;
request.prepayId = param.prepayId;
request.packageValue = param.packageValue;
request.nonceStr = param.nonceStr;
request.timeStamp = param.timeStamp;
request.sign= param.sign;
boolean bool = api.sendReq(request);
return bool;
}
//判断是否安装了微信
public static boolean isWxAppInstalledAndSupported(Context context) {
IWXAPI wxApi = WXAPIFactory.createWXAPI(context, Constants.APP_ID);
wxApi.registerApp(Constants.APP_ID);
boolean bIsWXAppInstalledAndSupported = wxApi .isWXAppInstalled() && wxApi.isWXAppSupportAPI();
return bIsWXAppInstalledAndSupported;
}
//微信支付 data为支付参数 type = 1为商品用微信支付 =2 为 零钱用微信支付
public static void wxPay(Context context,String data,int type){
String appId = "";
String partnerId = "";
String prepayId = "";
String packageValue = "";
String nonceStr = "";
String timeStamp = "";
String sign = "";
try {
JSONObject jsonObject = new JSONObject(data);
appId = jsonObject.getString("appid");
partnerId = jsonObject.getString("partnerid");
prepayId = jsonObject.getString("prepayid");
packageValue = jsonObject.getString("package");
nonceStr = jsonObject.getString("noncestr");
timeStamp = jsonObject.getString("timestamp");
sign = jsonObject.getString("sign");
} catch (JSONException e) {
e.printStackTrace();
}
IWXAPI api = WXAPIFactory.createWXAPI(context, appId);;
api.registerApp(appId);
PayReq request = new PayReq();
request.appId = appId;
request.partnerId = partnerId;
request.prepayId = prepayId;
request.packageValue = packageValue;
request.nonceStr = nonceStr;
request.timeStamp = timeStamp;
request.sign= sign;
request.extData=""+type;
boolean bool = api.sendReq(request);
// Log.i("fulu","prepayId :" + prepayId);
// Log.i("fulu","request.extData :" + request.extData);
}
}