支持微信和支付宝两种主流支付的集成库, 两行代码实现微信支付, 三行代码实现支付宝支付

标签: tuicool | 发表时间:2017-03-02 08:00 | 作者:
出处:http://itindex.net/admin/pagedetail

Android-Pay

支持微信和支付宝两种主流支付的集成库, 两行代码实现微信支付, 三行代码实现支付宝支付

引入

gradle

对应的项目中的build.gradle文件添加依赖:

dependencies {
    //添加支付库
    compile 'io.github.mayubao:pay_library:1.0.0'
}

maven

<dependency>
  <groupId>io.github.mayubao</groupId>
  <artifactId>pay_library</artifactId>
  <version>1.0.0</version>
  <type>pom</type>
</dependency>

使用

微信支付使用

//1.创建微信支付请求
        WechatPayReq wechatPayReq = new WechatPayReq.Builder()
                .with(this) //activity实例
                .setAppId(appid) //微信支付AppID
                .setPartnerId(partnerid)//微信支付商户号
                .setPrepayId(prepayid)//预支付码
//                              .setPackageValue(wechatPayReq.get)//"Sign=WXPay"
                .setNonceStr(noncestr)
                .setTimeStamp(timestamp)//时间戳
                .setSign(sign)//签名
                .create();
        //2.发送微信支付请求
        PayAPI.getInstance().sendPayRequest(wechatPayReq);


        //关于微信支付的回调
        //wechatPayReq.setOnWechatPayListener(new OnWechatPayListener);

注意:这里没有金额设置,金额的信息已经包含在预支付码prepayid了。

支付宝支付使用

//1.创建支付宝支付配置
        AliPayAPI.Config config = new AliPayAPI.Config.Builder()
                .setRsaPrivate(rsa_private) //设置私钥 (商户私钥,pkcs8格式)
                .setRsaPublic(rsa_public)//设置公钥(// 支付宝公钥)
                .setPartner(partner) //设置商户
                .setSeller(seller) //设置商户收款账号
                .create();

        //2.创建支付宝支付请求
        AliPayReq aliPayReq = new AliPayReq.Builder()
                .with(activity)//Activity实例
                .apply(config)//支付宝支付通用配置
                .setOutTradeNo(outTradeNo)//设置唯一订单号
                .setPrice(price)//设置订单价格
                .setSubject(orderSubject)//设置订单标题
                .setBody(orderBody)//设置订单内容 订单详情
                .setCallbackUrl(callbackUrl)//设置回调地址
                .create()//
                .setOnAliPayListener(null);//

        //3.发送支付宝支付请求
        PayAPI.getInstance().sendPayRequest(aliPayReq);

        //关于支付宝支付的回调
        //aliPayReq.setOnAliPayListener(new OnAliPayListener);

混淆

#pay_library
-dontwarn io.github.mayubao.pay_library.**
-keep class io.github.mayubao.pay_library.** {*;}

#wechat pay
-dontwarn com.tencent.**
-keep class com.tencent.** {*;}


#alipay
-dontwarn com.alipay.**
-keep class com.alipay.** {*;}

-dontwarn  com.ta.utdid2.**
-keep class com.ta.utdid2.** {*;}

-dontwarn  com.ut.device.**
-keep class com.ut.device.** {*;}

-dontwarn  org.json.alipay.**
-keep class corg.json.alipay.** {*;}

文档

微信支付官方文档 支付流程

https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=8_5

支付宝支付官方文档 支付流程

https://doc.open.alipay.com/docs/doc.htm?spm=a219a.7629140.0.0.sdGXaH&treeId=204&articleId=105296&docType=1

注意

微信支付

  • 微信支付必须要在 正式签名正确包名的应用中才能成功调起。(**重点)

    即商户在微信开放平台申请开发应用后对应包名和对应签名的应用才能成功调起。 详情请参考微信支付的开发流程文档。

    https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=8_5

  • 微信支付API没有在客户端显示的设置回调,回调是在Server端设置的。(与支付宝支付的区别,支付宝的回调是在客户端设置的)

支付宝支付

打赏

如果你觉得此项目对你有用,能否赏我一杯咖啡呢?

微信支付

支付宝支付

Copyright 2017 mayubao

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

相关 [微信 支付宝 主流] 推荐:

支持微信和支付宝两种主流支付的集成库, 两行代码实现微信支付, 三行代码实现支付宝支付

- - IT瘾-tuicool
支持微信和支付宝两种主流支付的集成库, 两行代码实现微信支付, 三行代码实现支付宝支付. 对应的项目中的build.gradle文件添加依赖:. .with(this) //activity实例. .setAppId(appid) //微信支付AppID. .setPartnerId(partnerid)//微信支付商户号.

对于个人理财,微信的理财通和支付宝的余额宝,哪家更合适?

- - 知乎每日精选
近日微信上线的理财通由于7日年化收益率达到了7.5%左右,盖过了余额宝的同期数据6.5%一个百分点,因此引来不少朋友咨询是否应将余额宝的钱转移到理财通里. 这个问题回答起来颇为复杂,需要系统性学习货币基金知识以及充分了解现金管理工具的作用. 首先我们需要明白余额宝背后挂靠的是天弘增利宝货币基金,理财通背后挂靠的是华夏财富宝货币基金(未来理财通据说会像数米基金网的现金宝一样提供多款货币基金,个人认为这增大了客户认知难度,是专业基金网站做的事,而不应该由理财通这种面向大众的APP来提供.

你死我活之间的较量:微信与支付宝之间的小同大异

- - 科幻星系
 自微信5.0版本推出支付功能以后,支付宝就和微信在移动端成为针锋相对的对手. 二者之间的竞争可谓高潮迭起,连续几个月的时间,双方已在线下商场、打车等领域展开了针尖对麦芒的战争. 而随着微信理财服务的推出,这场战争更是达到了白热化阶段. 虽然支付宝和微信是当前移动支付的两大巨头,但它们之间在基本元素有着小同的情况下存在着巨大的差异.

支付宝、微信、短信等9大电子证据取证、存证、举证技巧(详细汇总)

- -
在证据信息化的大趋势下,以计算机及其网络为依托的电子数据在证明案件事实的过程中起着越来越重要的作用. 那么短信、支付宝、微信等9大电子证据,如何取证、存证、举证. 今天给大家分享相关法律知识和实用技巧:. 根据《电子签名法》的规定,数据电文是指以电子、光学、磁或者类似手段生成、发送、接收或者储存的信息.

感恩支付宝

- Lee - 白鸦,以用户为中心的设计
几天前,我一边写离职信一边在处理深圳贝塔的事情,被旁边的朋友误认为是要去深圳腾讯. 交友不慎加上微博的力量太可怕,消息越传越真,各种背叛理论也被同事们说来说出,现在自己在这里澄清下:我今天(10月24日)刚从支付宝离职,接下来会先梳理一下杭州、北京、广州和正在筹建的深圳贝塔,并非是去腾讯. 最近三个月我的工作状态一直不是很好,因为我这个任性的家伙一直成长的很慢,无法跟上公司的快速发展,感觉自己在慢慢的掉队.

APP平台如何实现客户支付宝支付和微信支付将货款直接支付给商家,并实现平台抽佣? - 知乎

- -
我理解题主指的APP平台不只是APP,还包括B2B的商城管理系统,以实现商家入驻对管理上架商品. 如果是这样,那么两种模式都可以支持. 最核心的问题是:B2B的商城管理系统是否支持商家配置自己的微信支付/支付宝的商户号、支付密钥等信息,商家是否愿意把支付密钥等私密信息配置到一个第三方平台(类似很多微信商城管理系统的做法).

Steam支持支付宝

- SnakeYi - Solidot
最大的数字游戏发行平台Steam开始支持支付宝付费,并且汇率是根据最新的报价换算的. 例如,如果用户充值100美元,通过支付宝交易,它将根据中国建设银行汇率实时报价,例如1.00 美元 = 6.365 人民币,将100美元换算成636.50元人民币. 支持支付宝方便了中国玩家从Steam上购买数字游戏.

支付宝系统架构

- - 编程语言 - ITeye博客
支付宝的开源分布式消息中间件–Metamorphosis(MetaQ). Metamorphosis (MetaQ) 是一个高性能、高可用、可扩展的分布式消息中间件,类似于LinkedIn的Kafka,具有消息存储顺序写、吞吐量大和支持本地和XA事务等特性,适用 于大吞吐量、顺序消息、广播和日志数据传输等场景,在淘宝和支付宝有着广泛的应用,现已开源.

NervJS/taro: 开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5/React Native 等应用。 https://taro.zone/

- -
👽Taro['tɑ:roʊ],泰罗·奥特曼,宇宙警备队总教官,实力最强的奥特曼. Taro是一个开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5 等应用. 现如今市面上端的形态多种多样,Web、React Native、微信小程序等各种端大行其道,当业务要求同时在不同的端都要求有所表现的时候,针对不同的端去编写多套代码的成本显然非常高,这时候只编写一套代码就能够适配到多端的能力就显得极为需要.