首页 » Andorid » 安卓应用 » 正文

一键整合常用第三方支付库

MPay

安卓一键整合常用第三方支付库,默认整合了支付宝、微信支付功能。

支持

Android 2.2+

混淆

支付宝支付

-libraryjars libs/alipaySdk-20160427.jar

-keep class com.alipay.android.app.IAlixPay{*;}
-keep class com.alipay.android.app.IAlixPay$Stub{*;}
-keep class com.alipay.android.app.IRemoteServiceCallback{*;}
-keep class com.alipay.android.app.IRemoteServiceCallback$Stub{*;}
-keep class com.alipay.sdk.app.PayTask{ public *;}
-keep class com.alipay.sdk.app.AuthTask{ public *;}


微信支付

-libraryjars libs/libammsdk.jar


Gradle 下载aar

在项目的gradle中添加

    allprojects {
        repositories {
            ...
            maven { url 'https://jitpack.io' }
        }
    }

在app的gradle中添加

 compile 'com.github.MrxMo:MPay:v1.0.1'


使用

  • 实例化MPayBridge
        private void initMPay() {
        //只在支付宝支付起作用:设置是本地签名还是服务器签名
        MPayConfig.A_LI_PAY_SIGN_FROM_SERVICE = false;
        mPayBridge = new MPayBridge(this);
        mPayBridge.setOnPayListener(new MPayListener() {
            @Override
            public void onSuccess(String resultInfo) {
                Toast.makeText(getApplicationContext(), "支付成功", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onConfirm(String resultInfo) {
                Toast.makeText(getApplicationContext(), "支付结果确认中", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onFailure(String resultInfo) {
                Toast.makeText(getApplicationContext(), "支付失败", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onCancel(String resultInfo) {
                Toast.makeText(getApplicationContext(), "支付取消", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onFinish(String resultInfo) {
                // 最后回调的方法(无论什么状态,最后一定会回调该方法)
            }
        });
    }
  • 支付宝
    MPayConfig.A_LI_PAY_SIGN_FROM_SERVICE = false;//只在支付宝支付起作用:设置是本地签名还是服务器签名
mPayBridge.setmPayAble(new MPayAli(this));
// 手动签名
MPayAliModel mPayAliModel = new MPayAliModel();
mPayAliModel.setOrderId("商户网站唯一订单号");
mPayAliModel.setSubject("商品名称");
mPayAliModel.setBody("商品详情");
mPayAliModel.setPrice("商品金额 >= 0.01");
mPayAliModel.setNotifyUrl("服务器异步通知页面路径");
mPayAliModel.setPartnerId("签约合作者身份ID");
mPayAliModel.setSeller("签约卖家支付宝账号");
mPayAliModel.setRsaPrivateKey("商户私钥,pkcs8格式");
// mPayAliModel.setPayInfo("服务器直接返回签名的信息");
mPayBridge.setPayParam(mPayAliModel);
mPayBridge.pay();                
  • 微信
  1. 先到微信开发平台注册相关信息,应用签名与包名必须注册微信支付集成说明
  2. 在注册的包名下创建包“wxapi”,然后创建类“WXPayEntryActivity”,并继承“MWeChatPayResultActivity”
  3. 在AndroidManifest.xml添加

4) 在onDestroy方法中将监听器移除 <br />

mPayBridge.removeOnPayListener();

mPayBridge.setmPayAble(new MPayWeChat(this)); MPayWeChatModel mPayWeChatModel = new MPayWeChatModel(); mPayWeChatModel.setAppId("appId"); mPayWeChatModel.setPartnerId("partnerId"); mPayWeChatModel.setPrepayId("prepayId"); mPayWeChatModel.setNonceStr("nonceStr"); mPayWeChatModel.setPackageValue("Sign=WXPay"); mPayWeChatModel.setTimeStamp("timeStamp"); mPayWeChatModel.setSign("sign"); mPayBridge.setPayParam(mPayWeChatModel); mPayBridge.pay();


<br />

## 作者
莫先生 Mr-Mo 
下载 (5)

发表评论