問題描述
接入華為HMS SDK后,提交審核后,被駁回:使用花幣充值時,對支付延時處理不當,導致商品不到賬。模擬支付崩潰后(不在界面點擊“知道了”,開啟后台進程關閉游戲)游戲重啟,點擊開始,商品不到賬。
問題分析
這里我們通過此地址提了工單,得到了華為的技術支持答復:
這種情況我們可以先按照審核提供的模擬方法自測:
在支付完成后,界面不點擊“知道了”,直接強殺進程關閉我們應用(這種情況其實本質上模擬的是我們應用客戶端沒有收到華為的支付成功回調),然后重啟應用,查看之前支付成功的商品有沒有發貨。如果沒有發貨,說明補單機制有異常,會被駁回。
華為提供了補單接口obtainOwnedPurchases ,需要在適當的時機調用,以解決因為某些網絡異常、進程突然死掉等各種異常場景導致的掉單。
可以參考此文檔,做掉單的補單處理:

測試復現,我們確實重啟后沒有發貨。
問題解決
核實代碼后,發現我們只做了60051錯誤碼的掉單處理,返回錯誤碼-1和應用啟動時均沒有處理,補充處理后,重新提交審核,問題解決。
原文鏈接:https://developer.huawei.com/consumer/cn/forum/topic/0201501701524800110?fid=0101271690375130218
原作者:Mayism
