android4.1不支持微信,android微信支付---body不支持中文

"当在生成微信预支付订单时,如果商品描述(body参数)包含中文字符,使用ISO-8859-1编码进行XML数据转换可以解决微信返回错误的问题。在原始代码基础上增加对XML字符串的转码步骤,即`newString(xmlstring.toString().getBytes(), "ISO-8859-1")`,可以确保数据正确传输。"

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

return  newString(xmlstring.toString().getBytes(),"ISO-8859-1");

问题描述

18cbf69d92c6

在APP_ID,MCH_ID和API_KEY与应用的包名和签名都配套的情况下,可以生成预支付订单成功。微信返回如下信息:

但是若更改商品描述(body参数)为中文,如下:

packageParams.add(newBasicNameValuePair("body","weixin支付测试"));

其他条件不变的情况下,微信返回的信息如下:

因为httpget网络请求在发送xml数据时,需要使用”ISO-8859-1”格式的编码,因此需要对xml先进行下转码,即将原来的如下代码:

Stringxmlstring =toXml(packageParams);returnxmlstring;

修改为:

Stringxmlstring =toXml(packageParams);returnnewString(xmlstring.toString().getBytes(),"ISO-8859-1");

转自:http://blog.youkuaiyun.com/sophieDJF/article/details/46359057

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值