「Android集成微信支付」面试题回答思路
2018-10-22 本文已影响87人
黑键手记
接着上一篇回答「Android集成支付宝支付」的问题,我再来回答一下「Android集成微信支付」面试题回答思路:
微信的注册方式和支付宝不太一样,微信需要注册两个平台的账号:
一个微信开放平台,一个微信商户平台
微信开放平台是为了拿到appid,微信商户平台是为了拿到商户id。
微信也不需要私钥公钥什么的,直接就开始集成就好了
微信先添加依赖,在 build.gradle中直接添加依赖就可以了
然后到清单文件配置一些权限
然后在Applicaiton或者是MainActivity中通过AppId去注册WxApi。
然后后边就需要调用微信的api 去创建一个PayRequest
然后根据服务器返回的的订单支付信息
去给刚才创建出来的PayRequest配置信息:
配置信息包含:商户id,预支付id,随机字符串,时间戳,签名等信息
然后通过 WXApi(微信api)去发起这个支付请求。
然后我们还需要在我们的项目的根目录下创建一个wxapi的包
然后在包下创建一个WXPayEntryActivity这样名字的一个Activity类
并且实现IWXAPIEventHandler接口,实现接口中的onResp方法
然后根据 返回参数中的errCode(返回码)去做下一步的操作。
errCode为0 表示 支付成功
errCode为-1 表示 支付失败
(可能是因为签名错误,appid未设置或者设置错误等订单返回的预支付id不正确等等)
errCode为-2 表示用户取消
根据返回码,去做不一样的操作即可。
如果小伙伴们有新的思路,欢迎评论,喜欢请关注我,我会经常贴出一些经验贴,避免大家跳坑~