EasyPay对此项目的修改,和aar导出。
移动支付
pay-without-union-1.0.aar
不包含银联支付
pay-with-union-1.0.aar
包含银联支付
使用姿势
拷贝aar文件到主项目module,不能是library,在build.gradle文件添加代码
repositories {
flatDir {
dirs 'libs'
}
}
dependencies {
compile(name: 'pay-without-union-1.0', ext: 'aar')
}
微信支付
内部依赖
- libs
wechat-sdk-android-with-mta-1.1.6.jar
配置
-
在包名(applicationId:com.xxx.xxx)目录下建立.wxapi(如com.xxx.xxx.wxapi)目 录。在目录下新建WXPayEntryActivity.java,继承WXPayEntryBaseActivity.java,实现getWXAppId()方法。
public class WXPayEntryActivity extends WXPayEntryBaseActivity { @Override public String getWXAppId() { return "appid"; } }
-
在AndroidManifest.xml中注册上述Activity
<activity android:name=".wxapi.WXPayEntryActivity" android:exported="true" android:launchMode="singleTop" android:theme="@android:style/Theme.Translucent.NoTitleBar"/>
-
Application中初始化AppId
WXPay.setWxAppId(String wxAppId);
示例代码
private void wxpay(){
//实例化微信支付策略
String wxAppId = "";
WXPay wxPay = WXPay.getInstance(this,wxAppId);
//构造微信订单实体。一般都是由服务端直接返回。
WXPayInfoImpli wxPayInfoImpli = new WXPayInfoImpli();
wxPayInfoImpli.setTimestamp("");
wxPayInfoImpli.setSign("");
wxPayInfoImpli.setPrepayId("");
wxPayInfoImpli.setPartnerid("");
wxPayInfoImpli.setAppid("");
wxPayInfoImpli.setNonceStr("");
wxPayInfoImpli.setPackageValue("");
//策略场景类调起支付方法开始支付,以及接收回调。
EasyPay.pay(wxPay, this, wxPayInfoImpli, new IPayCallback() {
@Override
public void success() {
toast("支付成功");
}
@Override
public void failed() {
toast("支付失败");
}
@Override
public void cancel() {
toast("支付取消");
}
});
}
支付宝支付
内部依赖
-
libs
alipaySdk-20170407.jar
配置:无需配置。
示例代码
private void alipay(){
//实例化支付宝支付策略
AliPay aliPay = new AliPay();
//构造支付宝订单实体。一般都是由服务端直接返回。
AlipayInfoImpli alipayInfoImpli = new AlipayInfoImpli();
alipayInfoImpli.setOrderInfo("");
//策略场景类调起支付方法开始支付,以及接收回调。
EasyPay.pay(aliPay, this, alipayInfoImpli, new IPayCallback() {
@Override
public void success() {
toast("支付成功");
}
@Override
public void failed() {
toast("支付失败");
}
@Override
public void cancel() {
toast("支付取消");
}
});
}
银联支付
内部依赖
- libs
UPPayAssistEx.jar
UPPayPluginExPro.jar
- JNILibs
// CPU支持:armeabi、armeabi-v7a、x86、x86_64
libentryexpro.so
libuptsmaddon.so
配置:无需配置
示例代码
private void unionpay(){
//实例化银联支付策略
UnionPay unionPay = new UnionPay();
//构造银联订单实体。一般都是由服务端直接返回。测试时可以用Mode.TEST,发布时用Mode.RELEASE。
UnionPayInfoImpli unionPayInfoImpli = new UnionPayInfoImpli();
unionPayInfoImpli.setTn("814144587819703061900");
unionPayInfoImpli.setMode(Mode.TEST);
//策略场景类调起支付方法开始支付,以及接收回调。
EasyPay.pay(unionPay, this, unionPayInfoImpli, new IPayCallback() {
@Override
public void success() {
toast("支付成功");
}
@Override
public void failed() {
toast("支付失败");
}
@Override
public void cancel() {
toast("支付取消");
}
});
}