安卓支付宝接口调用(快捷支付)



大致流程:

1;String orderInfo = getOrderInfo("测试的商品", "该测试商品的详细描述", "0.01");//传入商品名称,描述,待付金额zj。

2;对要发送到支付宝服务器的信息进行签名。(保证该信息发送者的唯一)

签名的过程要放在后台服务器端执行,使用私钥进行签名

/**
		 * 特别注意,这里的签名逻辑需要放在服务端,切勿将私钥泄露在代码中!
		 */
		String sign = sign(orderInfo);// 签名过程应该放在服务器端执行。zj
		try {
			/**
			 * 仅需对sign 做URL编码
			 */
			sign = URLEncoder.encode(sign, "UTF-8");
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}

		/**
		 * 完整的符合支付宝参数规范的订单信息
		 */
		final String payInfo = orderInfo + "&sign=\"" + sign + "\"&"
				+ getSignType();
3;起线程来发送信息:

Runnable payRunnable = new Runnable() {

			@Override
			public void run() {
				// 构造PayTask 对象
				PayTask alipay = new PayTask(PayDemoActivity.this);
				// 调用支付接口,获取支付结果
				String result = alipay.pay(payInfo, true);

				Message msg = new Message();
				msg.what = SDK_PAY_FLAG;
				msg.obj = result;
				mHandler.sendMessage(msg);//使用handler来处理支付宝返回来的支付结果。zj
			}

4;客户端同步获得支付宝服务器的返回支付情况的结果。

5;客户端获得的该结果,异步发送到本应用的后台服务器,由后台服务器来验证结果。(商户可以使用签约时支付宝提供的公钥进行验证)(防止数据在传输过程中被篡改).

6;具体的验证内容:见支付宝网页https://doc.open.alipay.com/doc2/detail.htm?spm=0.0.0.0.xdvAU6&treeId=59&articleId=103665&docType=1

7;根据本服务器返回的结果来判断是否支付成功,然后做后续的操作。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值