安卓开发 实现银联支付
来源:互联网 发布:凸优化求解python库 编辑:程序博客网 时间:2024/04/28 12:35
官方地址:
https://open.unionpay.com/ajweb/help/file/techFile?productId=3
https://open.unionpay.com/ajweb/help/file/techFile
图片有点大~~
下载好demo
下载下来
如果是eclipse 开始的就相当省事了,copy进去就行。
studio需要注意 三点
图片都是在Project截取的。
一. data.bin 文件要放在 assets下面
二. so文件 发在 main下的jniLibs文件夹下。不要放lib了奥。
三. 权限一定要带上
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <!— 如果选择智能卡方式(即sdkPro)集成,需要额外定义以下权限 --> <uses-permission android:name="android.permission.RECORD_AUDIO" /> <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/> <uses-permission android:name="org.simalliance.openmobileapi.SMARTCARD" />
代码~
//TODO 银联支付 /***************************************************************** * mMode参数解释: "00" - 启动银联正式环境 "01" - 连接银联测试环境 *****************************************************************/ private final String mMode = "01"; /************************************************* * 步骤2:通过银联工具类启动支付插件 ************************************************/ UPPayAssistEx.startPayByJAR(MoneyRechargeActivity.this,PayActivity.class, null, null, "填写tn 就是流水号", mMode);----------------------------------------------------------------------------------------回调 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { /************************************************* * 步骤3:处理银联手机支付控件返回的支付结果 ************************************************/ if (data == null) { return; } String msg = ""; /* * 支付控件返回字符串:success、fail、cancel 分别代表支付成功,支付失败,支付取消 */ String str = data.getExtras().getString("pay_result"); if (str.equalsIgnoreCase("success")) { // 支付成功后,extra中如果存在result_data,取出校验 // result_data结构见c)result_data参数说明 if (data.hasExtra("result_data")) { String result = data.getExtras().getString("result_data");// try {// JSONObject resultJson = new JSONObject(result);// String sign = resultJson.getString("sign");// String dataOrg = resultJson.getString("data");// // 验签证书同后台验签证书// // 此处的verify,商户需送去商户后台做验签// boolean ret = verify(dataOrg, sign, mMode);// if (ret) {// // 验证通过后,显示支付结果// msg = "支付成功!";// } else {// // 验证不通过后的处理// // 建议通过商户后台查询支付结果 // msg = "支付失败!";// }// } catch (JSONException e) {// }// } else { // 未收到签名信息 // 建议通过商户后台查询支付结果 // msg = "支付成功!";// } msg = "支付成功!"; } else if (str.equalsIgnoreCase("fail")) { msg = "支付失败!"; } else if (str.equalsIgnoreCase("cancel")) { msg = "用户取消了支付"; } AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("支付结果通知"); builder.setMessage(msg); builder.setInverseBackgroundForced(true); // builder.setCustomTitle(); builder.setNegativeButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); builder.create().show(); }
怎么样简单吧.希望可以帮到你。
1 0
- 安卓开发 实现银联支付
- 安卓第三方支付之银联支付
- 安卓android银联支付Unionpay
- 安卓支付之ping++开发
- 安卓开发 - 微信支付
- 关于安卓开发之支付功能
- 安卓支付接入
- 安卓 支付 问题
- 安卓支付相关
- 2017安卓开发接入支付宝支付功能详解,真正做到完全翻译支付宝sdk开发应用
- 2017安卓开发接入支付宝支付功能详解,真正做到完全翻译支付宝sdk开发应用
- 安卓客户端微信支付功能实现
- 安卓实现支付宝6位密码输入界面
- 安卓实现支付宝6位密码输入界面
- 安卓实现支付宝6位密码输入界面
- 安卓开发 支付宝快捷支付可能存在的问题与风险
- 安卓支付外挂助手开发(免支付申请、密钥申请)
- 安卓手把手教你实现集成支付宝支付功能
- eclipse下如何打开ftl文件
- 设置label的行间距
- 模板的编译
- 美好的未来
- 史上最详细的Android Studio系列教程四--Gradle基础
- 安卓开发 实现银联支付
- 从输入网址到显示网页的全过程分析
- Android事件分发机制完全解析,带你从源码的角度彻底理解(上)
- 参数传递的代码分析
- const的作用
- frameset和div常规布局的优缺点比较
- Unix网络编程之UDP常见缺陷与实例
- Web页面向后台提交数据的方式和选择
- sql server 2008R2中的事务语句控制