1.添加微信與支付寶第三方集成
//支付寶 jar包 implementation files('libs/alipaySdk-20180601.jar') // 微信 implementation 'com.tencent.mm.opensdk:wechat-sdk-android-with-mta:+'
2.在MyApplication中初始化微信
private static IWXAPI api; public static IWXAPI getWXApi() { return api; }
在MyApplication的onCreat方法中創建
api = WXAPIFactory.createWXAPI(getApplicationContext(),null);
3.創建wxapi包添加下面兩個java文件
https://pan.baidu.com/s/13gSDukbThC7nNKLuo6-RmQ
https://pan.baidu.com/s/16e504YZyFYnag87k8aOF8w
4.創建utils包添加下面四個java文件
https://pan.baidu.com/s/10kxfcTckdomLFo_cQDDpeA
https://pan.baidu.com/s/1f7NbIZHzqaGnfAUoPGOGwA
https://pan.baidu.com/s/10QBnfK1xSW00FLjxV47vyg
https://pan.baidu.com/s/1SEXCFljtZVTwLay_Y3mEuA
5.代碼中調用對應方法
/**
* 支付寶支付
*/
private void alipayPay() {
AlipayUtils alipay = new AlipayUtils(VipActivity.this, "傳入服務器返回數據");
alipay.setAlipayUtilsCallback(new AlipayUtils.AlipayUtilsCallback() {
@Override
public void onComplete() {
ToastUtils.show("支付成功");
}
});
alipay.pay();
}
/**
* 微信支付
*/
private void wxPay() {
WXReturnInfo wxReturnInfo = new WXReturnInfo();
/**
{MD5: 426FF5B2D4EAFF7D0B4E4659B254C6E5
appid = wx81146dd5825947ff;
noncestr = 83Bd3x4vPs3iva1Q;
package = "Sign=WXPay";
partnerid = 1533943061;
prepayid = wx19173521296076508051fb0c1388979100;
sign = A65C1EAFD9975B14CA9852EC46B98AFF;
timestamp = 1568885721;
}
* }
* */
// wxReturnInfo.setOrderId("8448321565597421968443730");
wxReturnInfo.setAppid("wx81146dd5825947ff");
wxReturnInfo.setNoncestr("83Bd3x4vPs3iva1Q");
wxReturnInfo.setPartnerid("1533943061");
wxReturnInfo.setPrepayid("wx19173521296076508051fb0c1388979100");
wxReturnInfo.setSign("A65C1EAFD9975B14CA9852EC46B98AFF");
wxReturnInfo.setTimestamp("1568885721");
WXPayUtils.wechatPay(wxReturnInfo);
WXPayEntryActivity.wxCallback = new WXPayEntryActivity.WxCallback() {
@Override
public void onSucceed() {
ToastUtils.show("支付成功");
}
@Override
public void onancel() {
ToastUtils.show("支付失敗");
}
};
}
6.在AndroidManifest.xml中添加
<!--// 微信和支付寶支付。--> <activity android:name=".wxapi.WXEntryActivity" android:launchMode="singleTop" android:exported="true"></activity> <activity android:name=".wxapi.WXPayEntryActivity" android:launchMode="singleTop" android:exported="true"></activity> <activity android:name="com.alipay.sdk.app.H5PayActivity" android:configChanges="orientation|keyboardHidden|navigation|screenSize" android:exported="false" android:screenOrientation="behind" android:windowSoftInputMode="adjustResize|stateHidden"></activity> <activity android:name="com.alipay.sdk.app.H5AuthActivity" android:configChanges="orientation|keyboardHidden|navigation" android:exported="false" android:screenOrientation="behind" android:windowSoftInputMode="adjustResize|stateHidden"></activity>