Android微信app支付
后台设置
商户在微信开放平台申请开发应用后,微信开放平台会生成APP的唯一标识APPID。由于需要保证支付安全,需要在开放平台绑定商户应用包名和应用签名,设置好后才能正常发起支付。设置界面在【开放平台】中的栏目【管理中心 / 修改应用 / 修改开发信息】里面。
应用包名:是在APP项目配置文件AndroidManifest.xml中声明的package值,例如DEMO中的package=“net.sourceforge.simcpux”。
应用签名:根据项目的应用包名和编译使用的keystore,可由签名工具生成一个32位的md5串。
在微信开放平台设置此签名时需要小写且不含有冒号。
keytool命令查看密匙
keytool -list -v -keystore swjz.jks
根据提示输入命令,证书指纹里面的md5值就是这里需要的应用签名。
引包
implementation ‘com.tencent.mm.opensdk:wechat-sdk-android-without-mta:5.5.8’
调用
//需要从服务端获取这7个参数。其中appId和在Android端配置的一样,packageValue的值就是Sign=WXPay,其它值是后台传回的值。
IWXAPI api;
PayReq request = new PayReq();
request.appId = "wxd930ea5d5a258f4f";
request.partnerId = "1900000109";
request.prepayId= "1101000000140415649af9fc314aa427";
request.packageValue = "Sign=WXPay";
request.nonceStr= "1101000000140429eb40476f8896f4c9";
request.timeStamp= "1398746574";
request.sign= "7FFECB600D7157C5AA49810D2D8F28BC2811827B";
api.sendReq(request);