其实我特别怕做到微信支付带支付的功能,因为我觉得这技术会很难,但是没办法,新的项目让我直面面对支付,只能硬着头皮去研究,刚研究发现果然不好做,光是看官方的SDK文档都让我觉得一头雾水,但是在今天,历时两天对于微信支付的研究终于因为一篇博友的总结,成功了,所以记录一下。
第一句话,官方的也不一定是对的。
微信开放平台的支付文档真的写的我不知道说什么好,导入哪个包,要加什么权限只字未提,只是笼统的介绍了怎么去注册和调用,然后返回码也写的特别简单就3个,具体里面发生了错误可能是什么原因导致的也没有提及,根据他的demo和百度上的一些提示,我发现我写的差不多了,结果,返回码一直是-1
我踩的第一个坑,应用签名,要用jks文件,然后签名不一样是调用不起来的,这个算正常,自己没注意
第二个坑,微信支付必须要realease才能使用,debug是调用不起来的,这是什么坑。
第三个坑,返回的那个类 WXPayEntityActivity 必须要在wxapi下,请注意文件名字必须是一样的,wxapi必须是在项目一级目录下就类似com.example.xxx(项目包名).wxapi,这么霸道的嘛!
第四个坑也就是困住我的最大的一个坑,请求的timestamp不能用官方的,它是错的,要用自己的然后根据这些组合来用MD5生成一个sign值,再通过这些去请求微信支付。好坑啊!
爬出来,那种成就感挺爽的,不知道今天的那句“调用不成功就不回家”对自己今天的突破是不是也有帮助!
下一个对我来说需要突破的可能就是文件缓存和多媒体文件,视频,音频,图片那些的存储和录制了,加油!