iOS 內(nèi)購(gòu)(In-App Purchase)踩坑

1.App 內(nèi)購(gòu)時(shí),提示說(shuō):此時(shí)沒(méi)有權(quán)限在Sandbox購(gòu)買(mǎi)此InApp

2.添加 Sandbox 測(cè)試賬號(hào),注冊(cè)時(shí)填寫(xiě)郵箱,點(diǎn)擊邀請(qǐng),然后登錄剛剛的郵箱,驗(yàn)證地址
就可以免費(fèi)測(cè)試自己 APP 的內(nèi)購(gòu)項(xiàng)了。

3.bundleID要與iTunes Connect上你App的相同,不然是請(qǐng)求不到產(chǎn)品信息的

4.監(jiān)聽(tīng)購(gòu)買(mǎi)結(jié)果,當(dāng)失敗和成功時(shí)代碼中要調(diào)用:

[[SKPaymentQueue defaultQueue] finishTransaction:transaction];

該方法通知蘋(píng)果支付隊(duì)列該交易已完成,不然就會(huì)已發(fā)起相同 ID 的商品購(gòu)買(mǎi)就會(huì)有此項(xiàng)目將免費(fèi)恢復(fù)的提示。

5.游客模式可以出現(xiàn)購(gòu)買(mǎi)虛擬幣以及購(gòu)買(mǎi)VIP的頁(yè)面 而且允許游客購(gòu)買(mǎi) 購(gòu)買(mǎi)后的憑證要保存在本地 然后當(dāng)用戶登錄的時(shí)候 把這個(gè)憑證在發(fā)給服務(wù)器去驗(yàn)證 驗(yàn)證成功后 將虛擬幣或者是VIp加到當(dāng)前賬戶上
(但是不建議這么做處理起來(lái)比較繁瑣)

6.內(nèi)購(gòu)掉單問(wèn)題
(1)將訂單信息保存到本地,每次打開(kāi)app時(shí)自動(dòng)檢測(cè)本地是否有未完成的訂單,所以在服務(wù)端未給返回完成時(shí),這筆訂單是不會(huì)被完成的,再次打開(kāi)app都會(huì)走一個(gè)支付未完成的回調(diào),會(huì)根據(jù)系統(tǒng)給到的訂單信息匹配本地保存的未完成的訂單信息,再去服務(wù)端進(jìn)行校驗(yàn), 通過(guò)這種模式去保證不掉單
(2)如何APP被刪除了那么訂單可能也會(huì)失去了,這種情況比較極端,但是如果非要處理可以考慮保存到鑰匙串中
7.沒(méi)有訂單號(hào)
處理方式一樣在下單成功后,先把訂單保存在本地,再去確認(rèn)訂單時(shí),若是沒(méi)有訂單號(hào),就從本地拿一下確認(rèn)成功后,刪除對(duì)應(yīng)訂單號(hào)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容