话付通SDK 聚合支付
步骤
1、导入Jar包----将HeepayPlugin.jar,HftJuhePay.jar 包放入工程指定的libs目录。
2、配置清单文件----添加权限,添加activity等组件3、编码接入----支付参数传递,支付结果回调4、其他请参考说明文档

演示代码
public class MainActivity extends Activity {
private static String TAG = "bqt";private Context mContext;private RadioGroup mRgPayType;//支付方式private RadioButton mRBtnWeChat;//微信private RadioButton mRBtnAlipay;//支付宝private ClearEditText mEtPayAmount;//金额private Button mBtnPay;//支付private String mStrPayMode = "1";// 支付方式:微信=1,支付宝=2protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);mContext = this;setContentView(R.layout.activity_main);findViews();setLitener();}private void findViews() {mRgPayType = (RadioGroup) findViewById(R.id.rg_pay_way);mRBtnWeChat = (RadioButton) findViewById(R.id.rb_wechat_pay);mRBtnAlipay = (RadioButton) findViewById(R.id.rb_alipay);mEtPayAmount = (ClearEditText) findViewById(R.id.activity_main_et_pay_amount);mBtnPay = (Button) findViewById(R.id.activity_main_btn_pay);}private void setLitener() {mRgPayType.setOnCheckedChangeListener(new OnCheckedChangeListener() {@Overridepublic void onCheckedChanged(RadioGroup group, int checkedId) {if (checkedId == mRBtnWeChat.getId()) mStrPayMode = "1";if (checkedId == mRBtnAlipay.getId()) mStrPayMode = "2";}});mBtnPay.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {if (TextUtils.isEmpty(mEtPayAmount.getText().toString().trim())) {Toast.makeText(mContext, "请输入金额", Toast.LENGTH_SHORT).show();return;}HashMap<String, String> params = new HashMap<String, String>();params.put("pay_mode", mStrPayMode); // 支付方式:微信=1,支付宝=2params.put("order_id", getAppKey(mContext) + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date())); // 订单号params.put("pay_amt", mEtPayAmount.getText().toString().trim()); // 支付金额params.put("notify_url", "www.baidu.com"); // 通知地址params.put("goods_name", "虚拟测试产品"); // 商品名称params.put("goods_note", "虚拟测试产品0.01元"); // 商品价格信息,可为空params.put("extends_info", "无"); // 标记params.put("goods_num", "1"); // 商品数量HftJuhePay.getInstance().pay(mContext, params, new OnPayFinishedListener() {@Overridepublic void onPaySuccess(Map params) {printLog(params, "支付成功---");}@Overridepublic void onPayFail(Map params, int errorInt) {printLog(params, "支付失败---");}@Overridepublic void onPayCancel(Map params) {printLog(params, "支付取消---");}@Overridepublic void onPayProcess(Map params) {printLog(params, "支付处理中---");}});}});}private void printLog(Map params, String toast) {Toast.makeText(mContext, toast + params, Toast.LENGTH_LONG).show();Log.i(TAG, "params=" + params.toString());//goods_name=虚拟测试产品, total_amt=0.5, extends_info=无, goods_num=1,//order_id=S4LjqtXxozaVYDqSDMh1MliO20160317183136, goods_note=虚拟测试产品0.01元String mStrOrderId = ((Map<String, String>) params).get("order_id");//订单号String mStrTotalAmount = ((Map<String, String>) params).get("total_amt");//支付总金额String mStrGoodsName = ((Map<String, String>) params).get("goods_name");//商品名称String mStrGoodsNote = ((Map<String, String>) params).get("goods_note");//商品说明String mStrGoodsNum = ((Map<String, String>) params).get("goods_num");//商品数量String mStrExtendsInfo = ((Map<String, String>) params).get("extends_info");//扩展信息}/** 获取App_Key */public static String getAppKey(Context context) {return getStringMetaData(context, "HFT_APP_KEY");}private static String getStringMetaData(Context context, String key) {Bundle metaData = getMetaData(context);String strVal = metaData != null ? metaData.getString(key) : null;return strVal != null ? strVal : "";}private static Bundle getMetaData(Context context) {if (context == null) return null;PackageManager pm = context.getPackageManager();try {ApplicationInfo appInfo = pm.getApplicationInfo(context.getPackageName(), 128);if (appInfo != null) return appInfo.metaData;} catch (PackageManager.NameNotFoundException e) {e.printStackTrace();}return null;}}
附件列表
话付通SDK 聚合支付的更多相关文章
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_6-1.常用的第三方支付和聚合支付介绍
笔记 第六章 开发在线教育视频站点核心业务之从零基础接入 微信扫一扫网页支付 1.常用的第三方支付和聚合支付介绍 简介:介绍常用的第三方支付和聚合支付 1.什么是第三方支付 第 ...
- 教你快速高效接入SDK——服务器端支付回调的处理方式
转载自:http://blog.csdn.net/chenjie19891104/article/details/48321427今天着重把之前渠道服务器端SDK的时候,遇到的一个蛋疼的问题给解决了. ...
- 基于ping++聚合支付进行微信红包开发
1.微信方面的开发,一定要详细的阅读微信支付的开发文档. https://pay.weixin.qq.com/wiki/doc/api/tools/cash_coupon.php?chapter=13 ...
- C#实现盛大盛付通充值卡状态查询
今天有这样一需求,要求能够查询盛付通卡的状态,官网如下 http://www.801335.com/status/index.htm 刚一打开网址,发现两个输入框加一个验证码,心中一喜不是小 cas ...
- ASP.NET Core 2.0 支付宝当面付之扫码支付
前言 自从微软更换了CEO以后,微软的战略方向有了相当大的变化,不再是那么封闭,开源了许多东西,拥抱开源社区,.NET实现跨平台,收购xamarin并免费提供给开发者等等.我本人是很喜欢.net的,并 ...
- 从支付宝SDK的支付流程理解什么是公钥和私钥,什么是加密和数字签名
------------------- 这是自己总结: 支付宝SDK支付用到的公钥与私钥整理如下: 1.商户应用公钥 2.商户应用私钥 3.支付宝公钥 4.支付宝私钥 商户应用的公钥与私钥生 ...
- asp.net mvc4 运用 paypal sdk实现支付
1.https://developer.paypal.com/ 注册账号,并且申请一个app,获得 client id,secret等数据 2.点击页面中"Sandbox Account ...
- 微信支付开发 c# SDK JSAPI支付开发的流程和微信大坑
微信支付开发流程 1. 开通微信支付功能 省略 2. 下载微信的C#版的微信SDK 下载连接:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chap ...
- iOS:使用集成的支付宝SDK的支付流程
基本步骤: 1.先与支付宝签约,获得商户的ID(partner)和账号ID(seller),这一部分主要是又公司负责: 2.下载相应的公钥私钥文件,用来给签名进行加密: 3.下载支付宝集成的SDK,网 ...
随机推荐
- SQL中varchar和nvarchar有什么区别?
varchar(n)长度为 n 个字节的可变长度且非 Unicode 的字符数据.n 必须是一个介于 1 和 8,000 之间的数值.存储大小为输入数据的字节的实际长度,而不是 n 个字节.nvarc ...
- [FindBugs分析记录]Class defines clone() but doesn't implement Cloneable
官网解释: This class defines a clone() method but the class doesn't implement Cloneable. There are some ...
- C++ Primer 5th 第16章 模板与泛型编程
模板是C++中泛型编程的基础,一个模板就是创建一个类或者函数的蓝图或者说公式. C++模板分为函数模板和类模板. 类模板则可以是整个类是个模板,类的某个成员函数是个模板,以及类本身和成员函数分别是不同 ...
- JS读取文件,Javascript之文件操作 (IE)
一.功能实现核心:FileSystemObject 对象 要在javascript中实现文件操作功能,主要就是依靠FileSystemobject对象. 二.FileSystemObject ...
- ARM9的MMU
一 页表 1. 页表是放置在RAM(一般为DRAM)中的一个数据段. 2. ARM的地址空间为2^32字节,即4G字节. 3. 一级页表总共有4096条记录,每条记录对应的地址块为1M,一级页表中的记 ...
- ubuntu 的远程桌面
好久没有弄ubuntu 丢人的啊,先安装了个服务器版,发现好多命令都忘记了,命令行下根本搞不懂 又安装了个桌面版...但是服务器远程么,putty还是搞的头大,又乱码,有各种文件传输. 还好记得以前用 ...
- centos和Ubuntu区别
centos中新建的非root用户是没有sudo的权限的,如果需要使用sudo权限必须在/etc/sudoers 中加入账户和权限,所以切换到root账号的时候只需要输入:su,加入root账号的密码 ...
- 转:ElasticSearch 简单入门
原文来自于:http://www.oschina.net/translate/elasticsearch-getting-started?cmp 教程样例 我们将要部署一个非常简单的应用--在一个部门 ...
- 使用Snort进行入侵检测方法
http://blog.itpub.net/21507458/viewspace-1111587/ http://searchitchannel.techtarget.com/tip/Detect-e ...
- vmware压缩磁盘空间的方法
家里笔记本40G,可用空间怎么挤都只剩7G,从单位copy回来的linux虚拟机要10G,经检查实际使用空间5.7,也就是其他都是空余空间,可以释放掉.(只适合independent.Persiste ...