2016-04-05 47 views
0

我有工作代碼來進行或恢復購買。我可以購買和恢復。如何檢查用戶是否已經購買了應用程序?

我的想法是在購買屏幕上放置兩個按鈕:「購買」和「恢復」。

我想根據購買狀態來使用/禁用這些按鈕。

簡單:

  1. 如果用戶尚未購買 - > 「買入」,並啓用 「恢復」 禁用

  2. 如果用戶alredy買 - >沒有購買屏幕:)

  3. 如果用戶購買了alredy並重新安裝了應用程序 - 「購買」已禁用且「恢復」已啓用

當然,我正在使用standardUserDefaults,但用戶恢復應用程序時會出現問題。我的問題是如何從appStore獲得購買狀態(已購買或尚未購買)?

回答

0

你不應該這樣做,因爲Apple要求總是有一個恢復按鈕,否則你的應用將被拒絕。

您也不應該禁用或隱藏按鈕,具體取決於是否購買或恢復了某些按鈕。 如果用戶按他已購買的產品上的購買按鈕,他只是再次獲得該產品,你永遠不會收取兩次。

所以我甚至不打算嘗試這樣做。它也可以讓你的用戶體驗更加混亂。更好地擁有始終不變的一貫店鋪體驗。另外,用戶可能會認爲遊戲中存在一個錯誤,因爲他們看到的只是一個不起作用的按鈕。

如果您想向用戶指示他已經購買了該物品,可以在購買按鈕旁邊放上一個小小的勾號或某物。一旦購買了產品,您必須擁有某種布爾或其他屬性,並將其保存在NSUserDefaults中。只需使用該屬性添加或刪除勾號/指標。

如果您想知道如何在首次按下時處理恢復按鈕,則應使用恢復完成的委託方法。在那裏你可以基本顯示2個UIAlertControllers。 1如果沒有恢復,因爲以前沒有購買任何東西,1恢復成功。查看我最近爲示例代碼回答的這個問題。 Restore Purchase : Non-Consumable

「我們發現您的應用程序提供了可以恢復的應用程序內購買額,但不包含」還原「功能以允許用戶恢復以前購買的應用程序內購買額。購買的應用程序內購買產品,這是適當的,提供一個「恢復」按鈕,並啓動恢復過程當「恢復」按鈕被點擊「

+0

非常感謝您的回答 – Maciek

+0

歡迎您。快樂編碼 – crashoverride777

+0

檢查我更新的答案,因爲你想知道如何處理第一次按下恢復按鈕。如果卡住了,我還添加了示例代碼的鏈接。忘了添加此之前。 – crashoverride777

相關問題