我通過爲可購買內容做一個簡單的plist + zip文件下載來實現此目的。 plist有一個可用的產品清單。每個版本的應用都有一個plist文件,因爲在我的情況下,根據用戶的版本,內容有時會有差異。
該方案還支持個別內容項目的版本控制,因爲有時您想更改商店中的某個項目。
我不遵循Apple的購買指南 - 然後下載。我做下載購買解鎖。我對購買內容的人感到很緊張,然後不得不等待下載。 (我的內容文件非常大)。
下面是它如何工作的:
- 應用軟件下載的.plist本身。 (MyApp_2.1.plist)
- 打開.plist,查看每個內容項目的版本。假設應用程序目前擁有版本1的內容A和版本5的內容B.上面的plist文件告訴它,當前店面應該有版本1的A,版本6的B和版本7的C.所以應用程序下載B和C的內容。
- 內容存儲在一個zip文件中。就我而言,這些是具有XML文件,音頻和圖形內容的遊戲級別。還有一個包含該遊戲關卡元數據的.plist,其中包含版本號和該項目的AppStore ID。該應用解壓縮內容,然後將其作爲鎖定項呈現在店面中。如果用戶已經購買了它,那麼他們會自動獲取更新的內容。如果他們購買它,那麼我在那個時候解鎖內容。
這很簡單,可以使用任何CMS(甚至基於文件的純Web服務器)完成,並且支持多個版本的應用內容的多個版本。
如果您想查看UI,我爲此操作的應用程序是名爲Lexitect的遊戲,您可以從UI透視圖中看到它是如何組合在一起的。 (它是免費的)
我也有興趣! 我可以說的一件事是,我們使用Amazon AWS CloudFront將大型內容文件無線傳輸到我們的應用程序客戶設備 - 也許是一個難題? – makdad 2010-07-18 14:45:37