微信支付平台设置包名和签名文件的详细教程

2024-10-01
来源:网络整理

大哥教程整理的这篇文章主要介绍了微信APP支付功能的开发要点。老大哥教程觉得挺好的。现在我就分享给大家,给大家一个参考。

基本概念

包名应该是你APP的包名,在创建项目时设置。需要在微信支付平台上进行设置。

签名是指您生成APK时使用的签名文件的md5。去掉:全部小写,需要在微信支付平台上设置。

在调试阶段,可以使用签名文件进行调试。签名可以直接在上面查看,也可以用工具查看。安装完成后打开输入包名即可查看。

发布时,必须设置微信支付平台发布的签名值。

并不是官方Demo中的所有内容都是必须的,甚至.jar就够了,.xml不需要配置。

.xml配置和.java只是为了获取支付回调,暂时不用管。首先调试是否可以发起支付。

将 .jar 复制到项目的 libs 目录并添加 jar 引用。

在代码中发起支付请求:

IWXAPI api = WXAPIFactory.createWXAPI(this,Values.WXPAYAPPID); api.registerApp(Values.WXPAYAPPID); // 注册APPID,这句很重要,不然不会发起调用 PayReq req = new PayReq(); req.appId = wxPay.appid;// 也就是Values.WXPAYAPPID,如果二者不一致的话是没法发起支付的。 req.partnerId = json.getString("partnerid"); req.prepayId = json.getString("prepayid"); req.nonceStr = json.getString("noncestr"); req.timeStamp = json.getString("timestamp"); req.packageValue = json.getString("package"); req.sign = json.getString("sign"); //req.extData = "";// "app data"; // optional boolean r = api.sendReq(req); if(!r) { Toast.makeText(this,"打开微信支付失败!",Toast.LENGTH_SHORT).show(); }

上述代码中相关的预购ID、签名、时间戳等都是服务器返回的。服务器在生成这些值时需要注意二次签名问题。

正常情况下,微信客户端会打开支付页面,然后就可以开始回调了。

将 .java 复制到您的项目包下的文件夹中。例如,如果您的包名为 com.xx.shop,则将其放在 com.xx.shop 下。

设置 .xml 以支持回调:

/>

.java不需要布局文件,也可以根据自己的需要进行布局。

为了方便调试,将.java中的代码修改为:

@Override public void onResp(BaseResp resp) { Log.d("onPayFinish","onPayFinish,errCode = " + resp.errCode); if(resp.errCode==0){ Toast.makeText(this,"支付成功!",Toast.LENGTH_SHORT).show(); }else if(resp.errCode==-1){ Toast.makeText(this,"支付失败!",Toast.LENGTH_SHORT).show(); }else if(resp.errCode==-2){ Toast.makeText(this,"取消支付!",Toast.LENGTH_SHORT).show(); } }

不管支付能否成功,如果代码能自动执行,就说明你的.xml中的配置是正确的。

如果你对你的参数非常确定(例如,你的iOS团队可以支付,但你的仍然卡住),那么看看api。(.);如果有的话,是的,我会的。陷阱就在这里。在这种情况下,我第一次可以打开支付接口(非常偶尔),但又不行了。

总结

为什么微信不能给出详细的错误代码或解释?它只给出-1。天知道这意味着什么。真的很烦人。以上就是开发微信APP支付功能的全部要点。希望本文的内容能够对大家的发展有所帮助。

老板总结

以上就是大师教程为您收集整理的微信APP支付功能开发要点总结。希望文章能够帮助大家解决微信APP支付功能开发要点总结中遇到的程序开发问题。

如果您觉得大哥教程网站的内容不错,欢迎您将大哥教程推荐给您的程序员朋友。

分享