2012-01-25 112 views
2

我們正在創建一個應用程序如下:iOS應用永久性設置後應用中刪除

  • 用戶提供2個免費的「令牌」
  • 用戶可以買到的10個令牌包以$ .99中,應用程序啓動購買

我們已經使用NSUserDefaults實施了此操作,以節省令牌數量。

有沒有一種方法,使我們的免費雙令牌設置執着?即使他們刪除了該應用程序?現在您可以刪除應用程序並重新安裝以再次獲得2個令牌。 iOS 5有NSUbiquitousKeyValueStore用於將設置保存到iCloud,那有什麼更好的?

如果沒有,我們將不得不使用這個Web服務...

注意:這個程序是在MonoTouch的,但可能無關的問題。此外,在我們的應用程序中,用戶不會在意重新安裝應用程序以獲得2個令牌(沒有其他設置或遊戲進程會丟失)。

回答

5

只是我作爲@Almo 2C涵蓋了大部分的這種已經和應該得到的信貸:-)

NSUbiquitousKeyValueStore具有由用戶作爲優勢,例如幾個設備將共享相同的免費令牌。 OTOH,這可能不是你想要在你的應用程序中的東西...

離開卸載後的數據是對沙盒的應用程序。有辦法做到這一點,就像你可以添加圖片/照片/聯繫人/ ...,但不太可能是「蘋果批准」,並且很可能很容易破解。

所以我也建議你使用網絡服務。如果沒有找到應用程序數據(安裝並重新安裝),如果它是一個已知設備(無令牌),或者沒有找到應用程序數據,則一種簡單的方法是使用該服務進行驗證(例如,使用設備的MAC地址,因爲設備唯一標識符將消失) (拿到令牌)。

如果支付令牌可重複使用,那麼你可能要與Web服務來跟蹤它們(可以通過重新安裝,其中包括他們的數據備份重新播放)。不可重用的令牌不會受此影響(並且可能更容易處理)。

+0

我想如果我們發現我們的應用程序開始被濫用,我們會使用網絡服務。如果應用程序首先不會獲得太多收入,我寧願不花時間。感謝您的洞察力。 – jonathanpeppers

1

即使您嘗試進行設置執着,我不認爲這將是他們很難找到和重新安裝過程中刪除它。如果你想防止偶然的作弊,也許這很好。但如果這是您的收入來源,我建議使用web服務。

編輯補充:我沒有與任何iCloud的經驗。這也許是有道理的。

+0

是否有一個「蘋果批准」的方式來保存在某個地方你的應用程序文件夾之外的設置?應用程序文件夾是重新安裝時被刪除的內容。我並不擔心越獄設備可以做什麼來作弊。 – jonathanpeppers

+0

我不這麼認爲。即使有,當你做iPod的備份時,你可能會看到備份文件夾中的這些文件並將其刪除,然後執行恢復到備份。我有一些這方面的經驗,但我不是一個超級專家。如果你真的想在設備上存儲東西,我建議做一個徹底的測試,看看它是多麼容易刪除數據。 – Almo

+0

我想我們現在只准備給1個免費的令牌。如果沒有辦法做到這一點,我會將你標記爲答案。 – jonathanpeppers

6

可以設置令牌鑰匙串。如果用戶卸載應用並再次安裝,則可以從鑰匙串中恢復令牌。

sskeychain