最近項目需要我們的App需要集成微信支付,所以在這里寫一篇文章來解析一下微信支付中的一些坑。
Android支付
開發準備:
第一步:注冊一個微信開放平臺的賬戶:微信開放平臺
第二步:在微信開放平臺中認證開發者職責,在這一步需要填寫公司的一些基本信息
第三步:創建移動應用,創建移動應用的時候需要填寫應用的簡介等信息,審核成功后就可以直接獲取AppID和AppSecret
第四步:申請獲得微信支付能力,需要填寫公司的信息。
第五步:申請支付能力成功后,微信會下發郵件給你一個 商戶平臺的賬戶和密碼,使用這個賬戶和密碼登錄商戶,平臺獲取MucId:生成預付款訂單的一個重要信息。 key:key沒有初始值,需要自己手動重新設置,key是用于開發的時候的簽名。
開發:
第一步:
在后臺生成一個預付款訂單,生成預付款訂單的時候需要把參數拼接成xml的格式,并把App發起支付需要的信息返回給App,App獲取到這些信息后,就可以發起微信支付。
參數中需要加上支付后的通知地址,微信支付成功后,不僅會通知App,還會通知我們在這里設置的通知地址,微信支付的結果,以后臺接收到的通知為準,怎么獲取通知參數,在后面可以看到。
在生成預付款訂單的時候需要簽名,微信支付的簽名是MD5格式的,簽名方法在后面可以看到。
簽名的順序和含義可以參考官方文檔【微信支付】APP支付開發者文檔,簽名是否正確可以在微信:微信公眾平臺支付接口調試工具上驗證
第二步:下載微信的sdk,并且把libammsdk.jar集成到Android項目上,下載地址:【微信支付】APP支付開發者文檔。查看微信的demo可以解答很多疑惑。
第三步:在app上面吊起微信支付。在調起支付的時候必須要先把應用注冊到微信上。
第四部:添加微信回調的Activity,這個Activity的包名必須是(應用的包名.wxapi),類名必須是WXPayEntryActivity.并且實現微信支付的回調監聽接口。實現它的兩個方法。