微信支付sdk編譯混淆
A. 各支付SDK流程
一、微信支付
微信支付官方流程鏈接: https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=8_3
簡要來說流程如下:
1.用戶點擊商品下單:「商戶客戶端」調用「商戶服務端」生成訂單,「商戶服務端」後台調用「微信支付系統」的「統一下單API」介面,生成預付訂單後,返回給「商戶服務端後台」,商戶後台再回調給「商戶客戶端」。
2.用戶確認支付:「商戶客戶端」調用「調起微信支付」介面,界面跳轉到微信進行支付。
3.用戶支付成功:這里有三個回調,其一、「微信支付系統」通知「商戶管理後台」支付信息。其二、「微信支付系統」通知「微信客戶端」支付結果。其三、「微信支付系統」通過「商戶客戶端」實現的回調中處理支付狀態,「商戶客戶端」可通過調用「商戶管理後台」的介面查詢當前訂單狀態。(商戶管理後台也需要調用「微信支付系統」查詢訂單介面)
二、支付寶支付
支付流程圖:
支付寶支付對比微信支付流程還進行了簡化,即在生成訂單時,不需要商戶後台請求支付寶生成訂單,基本流程如下:
1.「商家APP」請求「商家後台」下單,「商家後台」返回訂單信息。
2.「商家APP」根據訂單喚起「支付寶App」進行支付。
3.支付成功後,「支付寶支付後台」返回支付結果給「支付寶App」,「支付寶App」返回支付結果給「商家App」、「支付寶支付後台」非同步通知支付結果給「商家後台」。
三、蘋果支付
流程圖:
支付流程:
1.用戶點擊購買,「App客戶端」請求「App服務端」創建交易訂單。
2.「APP客戶端」拿到交易信息,然後開始調起「IAP 伺服器」創建訂單。
3.「IAP伺服器」通知購買成功,並把收據信息寫入APP沙盒中。
4.「APP客戶端」去沙盒中拿到收據信息,並將收據信息上傳到「APP伺服器」,「APP伺服器」把收據信息請求「IAP 伺服器」驗證,如果有則返回到「APP客戶端」,把訂單結束。
參考鏈接: https://juejin.im/post/5a3b14f36fb9a045104aa6c8