Android--封装微信支付和支付宝支付

PaySDK

整合微信支付和支付宝支付

GitHub地址

使用方法

1.添加gradle依赖

compile 'com.sflin:pay:0.2.0'

2.在项目assets目录下创建pay.json文件

{
    "AliPay":{
        "app_id":"支付宝APPID",
        "RSA_PRIVATE":"应用私钥",
        "sign_type":"签名类型:如RSA2",
        "notify_url":"回调地址"
    },
    "WXPay":{
        "app_id":"微信APPID",
        "mch_id":"商户号",
        "app_key":"APPKey",
        "notify_url":"回调地址"
    }
}

3.使用如下:

PayOrder payOrder = new PayOrder();
payOrder.setPrice("0.01");//价格
payOrder.setBody("内容");//具体内容,如:充值
payOrder.setOrderId("123456");//订单号
//如果支付宝和微信都是服务端统一支付下单,需要如下参数
//微信服务端返回
payOrder.setWXPrepayId("prepayid");//从返回数据取
//支付宝服务端返回
payOrder.setAliPayInfo("info");//从返回数据取

//微信
WXPay pay = PaySDK.createPayAPI(WXPay.class);

//支付宝
AliPay pay = PaySDK.createPayAPI(AliPay.class);

pay.pay(this, payOrder2, new OnPayListener() {
    @Override
    public void onResult(PayResult result,String message) {
        if (result == PayResult.PAY_SUCCESS){...}
    }
});

//Payresult分为4个返回结果
//PAY_SUCCESS(成功),PAY_ERROR(失败),
//PAY_CANCEL(取消),PAY_LOADING(支付确认中)

关于微信支付在根目录创建wxapi文件夹创建WXPayEntryActivity(根据官方demo来)
在WXPayEntryActivity的onResp添加如下代码
@Override
public void onResp(BaseResp baseResp) {
    if (baseResp.getType() == ConstantsAPI.COMMAND_PAY_BY_WX) {
        WXPay.getInstance().setBaseResp(baseResp);
        finish();
    }

}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,967评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,306评论 19 139
  • 得知阿玲结婚生子的消息我表面的平静无法掩饰我内心的不安。我的不安不是嫉妒,是祝福,我不知新郎是谁,也不知他干什么,...
    淋雨一刻1224阅读 2,750评论 1 4
  • 今天学习了高级仿真模型的操作方法,老师演示了几个示例,自己也操作了一会,软件出现了问题、又安装了UG NX9.0 ...
    王集是个好小伙阅读 1,319评论 0 0
  • 冬日大多数时候是冷的。 萧瑟刺骨的风带来的不仅是透心凉和干燥,还无情的弄乱了女人的发;沉沉的暮霭营造的不只是仙境,...
    濛濛细语阅读 1,254评论 0 0