匯集移動(dòng)廣告行業(yè)熱點(diǎn)資訊和變現(xiàn)指南,激發(fā)移動(dòng)應(yīng)用廣告變現(xiàn)增長(zhǎng)無(wú)限可能!
在移動(dòng)應(yīng)用開(kāi)發(fā)領(lǐng)域,尤其是 iOS 應(yīng)用的開(kāi)發(fā)過(guò)程中,應(yīng)用內(nèi)購(gòu)買(mǎi)功能的實(shí)現(xiàn)至關(guān)重要。然而,在這個(gè)過(guò)程中,開(kāi)發(fā)者常常會(huì)遇到各種 SKError 代碼,這些錯(cuò)誤代碼可能會(huì)影響用戶的購(gòu)買(mǎi)體驗(yàn),甚至導(dǎo)致購(gòu)買(mǎi)流程中斷。因此,了解并正確處理這些錯(cuò)誤代碼對(duì)于確保應(yīng)用的穩(wěn)定性和用戶滿意度至關(guān)重要。

一、SKError 代碼概述
在 iOS 應(yīng)用內(nèi)購(gòu)買(mǎi)中,SKError 代碼是 StoreKit 框架返回的錯(cuò)誤代碼,用于指示購(gòu)買(mǎi)過(guò)程中出現(xiàn)的問(wèn)題。每個(gè)錯(cuò)誤代碼都有特定的含義和可能的解決方法。以下是一些常見(jiàn)的 SKError 代碼:
1. SKError.Code.unknown,代碼 = 0
- 含義:由于未知原因發(fā)生錯(cuò)誤。這種錯(cuò)誤通常比較難以排查,因?yàn)闆](méi)有明確的錯(cuò)誤信息可供參考。
- 修復(fù)方法:開(kāi)發(fā)人員一般無(wú)需采取特定的行動(dòng)。在使用 iOS 14 及以上模擬器嘗試獲取產(chǎn)品時(shí),也可能出現(xiàn)此錯(cuò)誤。此時(shí),可以使用 StoreKit 本地測(cè)試或使用 iOS 版本低于 iOS 14 的真實(shí)設(shè)備/模擬器來(lái)獲取產(chǎn)品。
- 錯(cuò)誤通知消息:抱歉,購(gòu)買(mǎi)因未知原因不可用。請(qǐng)稍后再試。
2. SKError.Code.clientInvalid,代碼 = 1
- 含義:用戶無(wú)法進(jìn)行購(gòu)買(mǎi)。例如,當(dāng)設(shè)備上的家長(zhǎng)控制功能開(kāi)啟時(shí),孩子試圖購(gòu)買(mǎi)東西就可能會(huì)出現(xiàn)這個(gè)錯(cuò)誤。
- 修復(fù)方法:開(kāi)發(fā)人員通常無(wú)需采取行動(dòng),因?yàn)檫@是用戶設(shè)備設(shè)置的問(wèn)題。
- 錯(cuò)誤通知消息:購(gòu)買(mǎi)無(wú)法完成。請(qǐng)更改您的賬戶或設(shè)備。
3. SKError.Code.paymentCancelled,代碼 = 2
- 含義:用戶進(jìn)入支付屏幕,但改變主意不想購(gòu)買(mǎi)并點(diǎn)擊了“取消”。
- 修復(fù)方法:從技術(shù)角度來(lái)看,這并不是真正的錯(cuò)誤,所以無(wú)需進(jìn)行特定的修復(fù)操作。然而,從營(yíng)銷(xiāo)角度考慮,開(kāi)發(fā)者可以繼續(xù)與這樣的用戶合作,例如為他們提供折扣以吸引他們?cè)俅螄L試購(gòu)買(mǎi)。
- 錯(cuò)誤通知消息:可以選擇不顯示任何內(nèi)容,或者用“你已取消購(gòu)買(mǎi)。你有興趣以折扣價(jià)嘗試訂閱嗎?”這樣的消息嘗試贏回用戶。
4. SKError.Code.paymentInvalid,代碼 = 3
- 含義:由于某種原因,支付失敗。可能是卡已過(guò)期或沒(méi)有足夠的資金進(jìn)行此次購(gòu)買(mǎi)。
- 修復(fù)方法:開(kāi)發(fā)人員無(wú)需采取特定的行動(dòng),因?yàn)檫@通常是用戶支付方面的問(wèn)題。
- 錯(cuò)誤通知消息:你的購(gòu)買(mǎi)被拒絕。請(qǐng)檢查支付詳細(xì)信息并確保你的賬戶中有足夠的資金。
5. SKError.Code.paymentNotAllowed,代碼 = 4
- 含義:這張卡可能有一些購(gòu)買(mǎi)限制,比如設(shè)置了限制或在線購(gòu)物功能不可用。
- 修復(fù)方法:開(kāi)發(fā)人員無(wú)需采取行動(dòng),因?yàn)檫@是用戶支付卡的限制問(wèn)題。
- 錯(cuò)誤通知消息:所選支付方式無(wú)法進(jìn)行購(gòu)買(mǎi)。請(qǐng)確保你的支付方式允許你進(jìn)行在線購(gòu)物。
6. SKError.Code.storeProductNotAvailable,代碼 = 5
- 含義:用戶正在嘗試購(gòu)買(mǎi)在其使用的商店所在地區(qū)不可用的產(chǎn)品。
- 修復(fù)方法:開(kāi)發(fā)人員需要檢查產(chǎn)品在用戶商店和地區(qū)的可用性??梢允褂?SKStorefront 來(lái)進(jìn)行檢查。
- 錯(cuò)誤通知消息:此產(chǎn)品在你的地區(qū)不可用。請(qǐng)更改商店并再次嘗試。
7. SKError.Code.cloudServicePermissionDenied,代碼 = 6
- 含義:用戶未授予其云服務(wù)信息的訪問(wèn)權(quán)限。
- 修復(fù)方法:開(kāi)發(fā)人員無(wú)需采取行動(dòng)。
- 錯(cuò)誤通知消息:老實(shí)說(shuō),這種錯(cuò)誤比較少見(jiàn)??梢院?jiǎn)單地顯示購(gòu)買(mǎi)被拒絕了。
8. SKError.Code.cloudServiceNetworkConnectionFailed,代碼 = 7
- 含義:購(gòu)買(mǎi)時(shí)設(shè)備未連接到互聯(lián)網(wǎng)。
- 修復(fù)方法:開(kāi)發(fā)人員無(wú)需采取行動(dòng)。
- 錯(cuò)誤通知消息:購(gòu)買(mǎi)無(wú)法完成,因?yàn)槟愕脑O(shè)備未連接到互聯(lián)網(wǎng)。請(qǐng)稍后在穩(wěn)定的網(wǎng)絡(luò)連接下再次嘗試。
9. SKError.Code.cloudServiceRevoked,代碼 = 8
- 含義:此設(shè)備無(wú)法訪問(wèn) StoreKit 支付服務(wù)。通常,此錯(cuò)誤發(fā)生在沙盒中。
- 修復(fù)方法:可以創(chuàng)建一個(gè)新的沙盒用戶或嘗試重復(fù)操作。
- 錯(cuò)誤通知消息:抱歉,發(fā)生了錯(cuò)誤。
10. SKError.Code.privacyAcknowledgementRequired,代碼 = 9
- 含義:用戶未接受 App Store 的使用條款。雖然文檔中提到與 Apple Music 的隱私政策有關(guān),但實(shí)際上這可能是一個(gè)通用的條款未接受問(wèn)題。
- 修復(fù)方法:開(kāi)發(fā)人員無(wú)需采取行動(dòng)。
- 錯(cuò)誤通知消息:購(gòu)買(mǎi)無(wú)法完成,因?yàn)槟闵形唇邮?App Store 的使用條款。請(qǐng)?jiān)谠O(shè)置中確認(rèn)你的同意,然后返回購(gòu)買(mǎi)。
11. SKError.Code.unauthorizedRequestData,代碼 = 10
- 含義:你的應(yīng)用 ID 不包含使用 StoreKit 所需的權(quán)限。
- 修復(fù)方法:需要完成應(yīng)用的應(yīng)用內(nèi)購(gòu)買(mǎi)設(shè)置過(guò)程。
- 錯(cuò)誤通知消息:發(fā)生錯(cuò)誤。請(qǐng)稍后再試。
12. SKError.Code.invalidOfferIdentifier,代碼 = 11
- 含義:用戶正在嘗試使用錯(cuò)誤的促銷(xiāo)優(yōu)惠購(gòu)買(mǎi)產(chǎn)品。
- 修復(fù)方法:開(kāi)發(fā)人員無(wú)需采取行動(dòng)。
- 錯(cuò)誤通知消息:促銷(xiāo)優(yōu)惠無(wú)效或已過(guò)期。
13. SKError.Code.invalidSignature,代碼 = 12
- 含義:StoreKit 請(qǐng)求的促銷(xiāo)優(yōu)惠簽名生成錯(cuò)誤。
- 修復(fù)方法:檢查簽名是如何生成的并修復(fù)錯(cuò)誤。如果使用 Adapty,可以下載訂閱密鑰。
- 錯(cuò)誤通知消息:抱歉,在應(yīng)用促銷(xiāo)代碼時(shí)發(fā)生錯(cuò)誤。請(qǐng)稍后再試。
14. SKError.Code.missingOfferParams,代碼 = 13
- 含義:促銷(xiāo)優(yōu)惠的參數(shù)形成錯(cuò)誤。
- 修復(fù)方法:檢查并糾正促銷(xiāo)優(yōu)惠的參數(shù)。
- 錯(cuò)誤通知消息:抱歉,在應(yīng)用促銷(xiāo)優(yōu)惠時(shí)發(fā)生錯(cuò)誤。請(qǐng)稍后再試。
15. SKError.Code.invalidOfferPrice,代碼 = 14
- 含義:用戶正在嘗試購(gòu)買(mǎi)價(jià)格不相關(guān)的產(chǎn)品??赡苁?App Store 中顯示的價(jià)格不再有效。
- 修復(fù)方法:在 App Store 中為該優(yōu)惠設(shè)置更新后的價(jià)格。
- 錯(cuò)誤通知消息:抱歉,你的購(gòu)買(mǎi)無(wú)法完成。請(qǐng)稍后再試。
16. SKError.Code.overlayCancelled,代碼 = 15
- 含義:用戶在應(yīng)用內(nèi)購(gòu)買(mǎi)覆蓋層中取消了購(gòu)買(mǎi)或其他交易。
- 修復(fù)方法:通過(guò)關(guān)閉應(yīng)用內(nèi)購(gòu)買(mǎi)覆蓋層并通知用戶交易已被取消。同時(shí),確保正確處理和清理與取消的交易相關(guān)的任何數(shù)據(jù)。
- 錯(cuò)誤通知消息:發(fā)生錯(cuò)誤。請(qǐng)稍后再試。
17. SKError.Code.overlayInvalidConfiguration,代碼 = 16
- 含義:應(yīng)用內(nèi)購(gòu)買(mǎi)覆蓋層的配置存在問(wèn)題。
- 修復(fù)方法:檢查應(yīng)用內(nèi)購(gòu)買(mǎi)的配置,并確保所有必填字段都正確配置。這可能涉及檢查產(chǎn)品標(biāo)識(shí)符、驗(yàn)證支付配置設(shè)置,并確保應(yīng)用已正確配置以處理應(yīng)用內(nèi)購(gòu)買(mǎi)。
- 錯(cuò)誤通知消息:發(fā)生錯(cuò)誤。請(qǐng)稍后再試。
18. SKError.Code.overlayTimeout,代碼 = 17
- 含義:應(yīng)用內(nèi)購(gòu)買(mǎi)覆蓋層在等待用戶或 App Store 的響應(yīng)時(shí)超時(shí)。
- 修復(fù)方法:確保應(yīng)用已正確配置以處理應(yīng)用內(nèi)購(gòu)買(mǎi),并且代碼正確處理購(gòu)買(mǎi)流程。可以考慮優(yōu)化應(yīng)用性能,以減少應(yīng)用內(nèi)購(gòu)買(mǎi)期間超時(shí)或延遲的可能性。
- 錯(cuò)誤通知消息:發(fā)生錯(cuò)誤。請(qǐng)稍后再試。
19. SKError.Code.ineligibleForOffer,代碼 = 18
- 含義:用戶不符合特定的優(yōu)惠或與應(yīng)用內(nèi)購(gòu)買(mǎi)相關(guān)的促銷(xiāo)的資格。
- 修復(fù)方法:審查優(yōu)惠的資格標(biāo)準(zhǔn),并確保它們得到正確記錄并傳達(dá)給用戶。可以考慮為不符合原始優(yōu)惠的用戶提供替代優(yōu)惠或促銷(xiāo)。
- 錯(cuò)誤通知消息:發(fā)生錯(cuò)誤。請(qǐng)稍后再試。
20. SKError.Code.unsupportedPlatform,代碼 = 19
- 含義:應(yīng)用正在不受支持的平臺(tái)或設(shè)備上運(yùn)行。
- 修復(fù)方法:審查應(yīng)用內(nèi)購(gòu)買(mǎi)的要求和限制,并確保它們與應(yīng)用支持的平臺(tái)和設(shè)備兼容。
- 錯(cuò)誤通知消息:發(fā)生錯(cuò)誤。請(qǐng)稍后再試。
21. SKError.Code.overlayPresentedInBackgroundScene,代碼 = 20
- 含義:應(yīng)用內(nèi)購(gòu)買(mǎi)覆蓋層在后臺(tái)場(chǎng)景中呈現(xiàn),而不是在活動(dòng)場(chǎng)景中。
- 修復(fù)方法:確保應(yīng)用正確管理其場(chǎng)景,并在活動(dòng)場(chǎng)景中呈現(xiàn)應(yīng)用內(nèi)購(gòu)買(mǎi)覆蓋層??梢钥紤]優(yōu)化應(yīng)用性能,以減少在應(yīng)用內(nèi)購(gòu)買(mǎi)過(guò)程中后臺(tái)場(chǎng)景變?yōu)榛顒?dòng)的可能性。
- 錯(cuò)誤通知消息:發(fā)生錯(cuò)誤。請(qǐng)稍后再試。
二、正確處理 SKError 代碼的重要性
正確處理 SKError 代碼對(duì)于提升用戶體驗(yàn)至關(guān)重要。當(dāng)用戶在購(gòu)買(mǎi)過(guò)程中遇到錯(cuò)誤時(shí),如果能夠及時(shí)得到清晰的錯(cuò)誤通知和合理的解決方案建議,他們更有可能繼續(xù)嘗試購(gòu)買(mǎi)或者對(duì)應(yīng)用保持信任。相反,如果錯(cuò)誤處理不當(dāng),用戶可能會(huì)感到困惑和失望,甚至放棄使用應(yīng)用。
此外,通過(guò)合理的錯(cuò)誤處理,開(kāi)發(fā)者還可以挽回一些因某種原因無(wú)法立即支付訂閱費(fèi)用的用戶。例如,對(duì)于因支付取消而產(chǎn)生的錯(cuò)誤,可以通過(guò)提供折扣等方式吸引用戶再次嘗試購(gòu)買(mǎi);對(duì)于因設(shè)備設(shè)置或網(wǎng)絡(luò)問(wèn)題導(dǎo)致的錯(cuò)誤,可以引導(dǎo)用戶解決問(wèn)題后再次進(jìn)行購(gòu)買(mǎi)。
熱門(mén)搜索:APP廣告變現(xiàn) | APP接入廣告 | 廣告聚合工具
芒果聚合廣告平臺(tái),為開(kāi)發(fā)者提供高效、便捷的廣告變現(xiàn)方案,一鍵接入穿山甲、快手、優(yōu)量匯、百青藤等多家廣告聯(lián)盟,支持開(kāi)屏、banner、插屏、信息流、激勵(lì)視頻等多種廣告形式,配備專(zhuān)業(yè)廣告優(yōu)化師精細(xì)化運(yùn)營(yíng)管理,幫助APP\小程序\H5開(kāi)發(fā)者優(yōu)化每月>20%的增長(zhǎng)收益,立即體驗(yàn)!

相關(guān)閱讀:
什么是預(yù)測(cè)分析?預(yù)測(cè)分析在APP用戶增長(zhǎng)中的關(guān)鍵作用
免責(zé)聲明:本站文章來(lái)源于互聯(lián)網(wǎng),文章為作者獨(dú)立觀點(diǎn),不代表本站立場(chǎng)。如有侵權(quán),請(qǐng)聯(lián)系我們。