android支付宝调用
android客户端调用支付宝,主要是获取订单信息后,唤起对应支付平台进行支付业务
操作流程,小白表示对整体的流程不是很清楚,这里只是大致说下测通支付流程
第一步:仿照文档上写,
地址:支付宝集成流程
导入jar包,配置写进去,混淆一般都要写的,写好之后
回去看看支付宝的demo,看看PayDemoActivity
我标记了orderInfo ,这个是订单,这个很重要,
不需要支付宝登录的话里面的授权就无视他就好了,还有的就是那个H5pay也可以无视,demo里面只是为了展示,sdk里面有所以项目中就不用在写了,
在看下面这句话
是启动的方法,请求数据的时候用到,
准备好了之后就开始写了
假如你有一个按钮 你写了一个方法
flag是判断方法,请无视呢,
先定义订单:String orderInfo= "";
把demo的全部复制过来吧,一行一行写估计很多人不明白
我要说几点NetUtils 是项目中封装的请求数据的类,CardPay是一个bean,自己写的,
我这个是购卡,请求后台一个用户id和卡的编号,这些都是自己项目的需求写的。
主要是拿到数据后发送请求,
Thread payThread = new Thread( payRunnable ); payThread.start();
那个PayResult直接从demo复制过来就行,
这样就能吊起支付宝了,(支付那些流程了现在换不是很清楚,配置好多都是在后台做的,自己没有尝试去做,有机会弄清楚了在写一篇支付,有不清楚的可以私聊我,项目已经接通。)
String orderInfo = ""; private void zhifubaopay() {setProgressContent("请求中"); showProgressDialog(); Pay z = new Pay(); z.setAccount_Id(mUser.getAccount_Id()); z.setMerName(merName); z.setMerCode(merCode); z.setSerCode(serCode); z.setPayMethod(2); NetUtils.getInstance().post(Constant.ServicePayment, z, new NetUtils.NetDataBack() {@Override public void onback(String s, Call call, Response response) {Gson gson = new Gson(); PayWeixin p = gson.fromJson( s, PayWeixin.class ); if (p.getResultCode().equals( Login.RIGHT_CODE )) {orderInfo = p.getJsonData().getOrdercode();//从Ordercode中拿到数据 Thread payThread = new Thread( payRunnable ); payThread.start(); dissmissProgressDialog(); } else {showToast( "支付失败" ); }}@Override public void onError(String error) {}} ); }private static final int SDK_PAY_FLAG = 1; @SuppressLint("HandlerLeak") private Handler mHandler = new Handler() {@SuppressWarnings("unused")public void handleMessage(Message msg) {switch (msg.what) {case SDK_PAY_FLAG: {@SuppressWarnings("unchecked")PayResult payResult = new PayResult( (Map<String, String>) msg.obj ); /** 对于支付结果,请商户依赖服务端的异步通知结果。同步通知结果,仅作为支付结束的通知。 */ String resultInfo = payResult.getResult();// 同步返回需要验证的信息 String resultStatus = payResult.getResultStatus(); // 判断resultStatus 为9000则代表支付成功 if (TextUtils.equals( resultStatus, "9000" )) {// 该笔订单是否真实支付成功,需要依赖服务端的异步通知。 Toast.makeText(PayActivity.this, "支付成功", Toast.LENGTH_SHORT ).show(); } else {// 该笔订单真实的支付结果,需要依赖服务端的异步通知。 Toast.makeText(PayActivity.this, "支付失败", Toast.LENGTH_SHORT ).show(); }break; }}} }; Runnable payRunnable = new Runnable() {@Override public void run() {PayTask alipay = new PayTask(PayActivity.this ); Map<String, String> result = alipay.payV2( orderInfo, true ); Log.i( "msp", result.toString() ); Message msg = new Message(); msg.what = SDK_PAY_FLAG; msg.obj = result; mHandler.sendMessage( msg ); } };
android支付宝调用相关推荐
- android 支付宝沙箱测试环境,Android支付宝沙箱环境使用教程
Android支付宝沙箱环境使用教程 网上好多支付宝教程,但是好像没看到支付宝沙箱环境的使用教程,尤其是在做Android支付宝测试的时候,沙箱拿来测试挺好的,正式使用的时候更换里面的个别数据就可以了 ...
- android支付宝支付开发过程
android支付宝支付开发过程 原文:android支付宝支付开发过程 支付宝开发流程: 1.在支付宝申请一个账号并开通开发者功能和移动支付的功能. 支付宝地址:https://auth.alipa ...
- android 支付宝sdk接入详解
android 支付宝sdk接入详解 第一步 在接入支付宝sdk之前首先要进入支付宝开发者平台申请应用所需要的应用唯一标识(APPID).应用私钥(APP_PRIVATE_KEY).支付宝公钥(ALI ...
- android支付界面设计,Android支付宝支付设计开发
在移动支付领域,支付宝支付占用巨大份额,根据艾瑞咨询公布的报告数据:2014Q3,支付宝斩获了82.6%的市场份额,在移动支付的霸主地位越来越稳固.财付通支付的发力点在微信支付和手Q支付,在移动支付格 ...
- android wsdl封装,在Android中调用C#写的WebService(附源代码)
由于项目中要使用Android调用C#写的WebService,于是便有了这篇文章.在学习的过程中,发现在C#中直接调用WebService方便得多,直接添加一个引用,便可以直接使用将WebServi ...
- 在Android中使用Android Ksoap2调用WebService
一.WebService介绍 WebService是基于SOAP协议可实现web服务器与web服务器之间的通信,因采用SOAP协议传送XML数据具有平台无关性,也是成为解决异构平台之间通信的重要解决方 ...
- android jni调用so库
今天,讲讲android studio 使用jni调用其他so库的使用. 首先说一下在网上查找资料时,对于调用第三方so库,有人说有两种方法: 1. 对于so库的API符合JNI格式(即使用ja ...
- 调试通过的android手机调用网上.net web service的例子
搭建了android环境,至少有2种方法实现调用webservice 1 用java直接socket编程 2调用封装好的ksoap2-android-assembly-2.4-jar-with-dep ...
- android 电视遥控 编程,Android编程调用红外线遥控功能示例
本文实例讲述了Android编程调用红外线遥控功能.分享给大家供大家参考,具体如下: Android API Demos中有红外线遥控的小例子,在网上找了很久相关的资料,发现比较少,或许找的方法不对. ...
最新文章
- R语言可视化散点图(scatter plot)图中的标签和数据点互相堆叠丑死了,ggrepel包来帮忙:文本标签(label)相互排斥,远离数据点,远离绘图区域的边缘。
- 编译gtk+程序报错gcc: pkg-config --cflags --libs gtk+-2.0: 没有那个文件或目录
- android SurfaceView
- 华为手机楷体字体下载_手机查看3D打印模型图纸,国产软件SView来了
- spring MVC RequestMappingHandlerMapping解析
- 设计模式之观察者模式demo
- docker 虚悬镜像 ( 悬空镜像 ) :镜像没有仓库名或没有标签
- python标准库之random模块
- python秒网课_利用python完成大学刷课(从0到完成的思路)
- mac使用bootcamp安装win7遇到的一些坑
- 手机android系统界面,Android 4.0系统,界面很原生
- 诀窍|Callnovo助中国电动自行车成为大洋彼岸街头美丽风景线
- 深度报道 | 瀚高软件CTO郑晓军:以开源之路发展国产数据库符合市场规律
- 英特尔AI顾问“穿越星际”守护宇航员健康
- VPS云主机的定义和基本优势有哪些
- 解决远程windows server12桌面复制文件大于2G出错问题
- 陪你云sdk用户指南
- 华为电脑管家装到D盘_科普 | 电脑C盘满了,不想重新分区怎样扩容?我教你
- Linux 密码破解之 John the Ripper
- 少儿编程C++画图之GOC编程 视频和资料集
热门文章
- mybatis查询报错:com.mysql.cj.exceptions.DataConversionException: Cannot determine value type from string
- OpenAPI使用(swagger3),Kotlin使用swagger3,Java使用swagger3,gradle、Maven使用swagger3
- keyshot怎么批量渲染_提高Keyshot逼真渲染的小技巧
- etcd 笔记(09)— 基于 etcd 实现微服务的注册与发现
- jieba词性说明字典
- MXNet 图优化与算子融合
- Lidar激光雷达与Radar雷达
- 深度学习调用TensorFlow、PyTorch等框架
- centos命令大全
- Python ModuleNotFoundError: No module named ‘xlrd‘