2013-01-11 56 views
5

我創建iOS上的服務器驅動的遊戲,讓玩家創造多設備玩遊戲的帳戶。我的遊戲有應用內購買(IAP),它們是非消耗性的,可以由原始購買者恢復或重新下載。的iOS漏洞利用:恢復應用內購買到多個遊戲帳號

我寧願球員不能恢復他們的IAP多個遊戲賬號。蘋果的規則有可能嗎?

以英雄學院爲例,它是可能的。

  • PLAYER1購買所有的IAP對他的遊戲帳號和iTunes賬戶
  • PLAYER1登錄Player2的英雄學院遊戲賬號
  • PLAYER1重新下載的非消耗IAP到Player2的遊戲賬號,給Player2權限給所有的IAP
  • Player2的登錄到自己的遊戲帳號自己的設備上,現在有權限的所有IAP

結果是:Player2已經得到了所有我的AP免費。

我可以在他們的iTunes帳戶中讀取並將iTunes恢復購買限制爲單個遊戲帳戶。實施該解決方案似乎違背了Apple恢復非易損IAP的指導方針。

我可能會考慮購買消費品,並且只適用於單一帳戶,但似乎不符合Apple的指導方針,並且會成爲最終用戶設計不佳的問題。

+0

你是否找到了解決辦法? – GameDevGuru

+0

我建議你直接聯繫Apple。 – Timtech

+1

如何使用IOS 7.0+可用的「applicationUsername」字段? – Lexicon

回答

0

我懷疑答案可能在於使用類似NSUbiquitousKeyValueStore的東西。這確實需要用戶使用iCloud,但我認爲大多數用戶都這樣做。如果我理解正確,這是一個基於iCloud的鍵值存儲,因此將與一個特定的AppleID相關聯。

通過保留自己的英雄學院ID,我認爲你應該將其與特定的AppleID同步。這就是說,在你的漏洞利用的第2步中,Player2需要將他的AppleID和密碼都提供給Player1。許多人不願意這樣做。有些是,但是,並防止這種情況,我認爲你必須使其核對過NSUbiquitousKeyValueStore權限您的遊戲編程。換句話說,您必須在您使用Apple ID時積極與您的AppleID進行特殊購買。

您的遊戲永遠不會看到實際的AppleID,但它可以通過Hero Academy播放的ID將您在其中放置的一個iCloud存儲與另一個iCloud存儲區分開。

我試圖做的,我現在開發一個應用程序類似的原因類似。我沒有足夠的測試來確定上述方法是否有效,但到目前爲止它似乎很有前景。

1

一個簡單的解決方案是使用軟消耗的IAP,用戶花費在遊戲中購買非消耗品。

I.e.我以5美元的價格購買100件魔法幣的易耗品IAP捆綁包,以購買花費50件魔術幣的魔法物品。

+1

事實上,任何可敬的殭屍或龍場都是基於'遊戲'經濟。 – Jef

相關問題