微信支付的有关问题记录

微信支付的问题记录

在接入微信支付的过程中遇到了跟多问题

  (1)微信支付在传价格的时候不能传  1.0,10.0等等又小数点,而且微信价格最小是分

     也就是你传10,其实是1毛。

   (2)还有就是在进行修改他的bady,也就是名称的时候,最后要把xml文件换种编码方式

	//
	private String genProductArgs(String price,String outTradeNo,String goodsName) {
		StringBuffer xml = new StringBuffer();

		try {
			String nonceStr = genNonceStr();

			xml.append("</xml>");
			List<NameValuePair> packageParams = new LinkedList<NameValuePair>();
			packageParams.add(new BasicNameValuePair("appid", APP_ID));
			packageParams.add(new BasicNameValuePair("body",goodsName));
			packageParams.add(new BasicNameValuePair("mch_id", MCH_ID));
			packageParams.add(new BasicNameValuePair("nonce_str", nonceStr));
			packageParams.add(new BasicNameValuePair("notify_url", mNotifyUrl));
			packageParams.add(new BasicNameValuePair("out_trade_no", outTradeNo));
			packageParams.add(new BasicNameValuePair("spbill_create_ip", "127.0.0.1"));
			packageParams.add(new BasicNameValuePair("total_fee", /*price*/"1"));
			packageParams.add(new BasicNameValuePair("trade_type", "APP"));

			String sign = genPackageSign(packageParams);
			packageParams.add(new BasicNameValuePair("sign", sign));

			String xmlstring = toXml(packageParams);
			return new String(xmlstring.toString().getBytes(), "ISO8859-1");

		} catch (Exception e) {
			Log.e("weixinPay", "genProductArgs fail, ex = " + e.getMessage());
			return null;
		}

	}
        (3)微信提示签名错误:上变的俩种都有可能引起,还有就是确实是你签名有问题


(4)微信支付成功以后不会回调支付完成的那个界面,这个需要的是

微信支付的有关问题记录

         必须要保持跟微信的demo中包名一个模式才行,用自己的pakageName + “.wxapi”来定义你的包名。


         (5)微信的支付测试都要签名以后才能成功。


版权声明:本文为博主原创文章,未经博主允许不得转载。