支付宝集成,在沙箱环境下,退款一直不成功,返回 4000 系统繁忙
//调用接口
OrderId = orderId;
boolean rsa2 = (RSA2_PRIVATE.length() > 0);
Map<String, String> params = OrderInfoUtil2_0.buildRefundParamMap(APPID, rsa2,price);
String orderParam = OrderInfoUtil2_0.buildOrderParam(params);
String privateKey = rsa2 ? RSA2_PRIVATE : RSA_PRIVATE;
//String privateKey = RSA_PRIVATE;
String sign = OrderInfoUtil2_0.getSign(params, privateKey, rsa2);
final String orderInfo = orderParam + "&" + sign;
Runnable payRunnable = new Runnable() {
@Override
public void run() {
PayTask alipay = new PayTask(activity);
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);
}
};
Thread payThread = new Thread(payRunnable);
payThread.start();
//构建返回信息
Map<String, String> keyValues = new HashMap<String, String>();
keyValues.put("app_id", app_id);
keyValues.put("biz_content", "{\"out_trade_no\":\"78\"," +
"\"trade_no\":\" \"," +
"\"refund_amount\":\"0.00\"}");
//keyValues.put("biz_content", "{\"out_trade_no\":\"11\",\"trade_no\":\"2017091221001004160200211834\",\"refund_amount\":"+ accunt +"}");
//keyValues.put("biz_content", "{\"trade_no\":\"2017091221001004160200211834\"}");
//keyValues.put("biz_content", "{\"out_trade_no\":\"11\"}");
keyValues.put("charset", "utf-8");
//keyValues.put("method", "alipay.trade.refund");
keyValues.put("method", "alipay.trade.refund");
keyValues.put("sign_type", rsa2 ? "RSA2" : "RSA");
//keyValues.put("sign_type","RSA");
//keyValues.put("timestamp", "2016-07-29 16:55:53");
keyValues.put("version", "1.0");
return keyValues;