2011-01-20 26 views
3

嗨 我正在研究一款iphone應用程序,每次下載時需要維護一個有點獨特的標識符。有沒有辦法檢索用於下載應用程序的Apple ID,或者是否可以使用另一個標識符將所有設備與該下載鏈接到遠程數據庫/服務?從Cocoa Touch內的應用程序下載中檢索到的Apple ID

基本上我想我的自定義生成的數據的一個實例坐在任何設備鏈接到某個Apple ID。如果iTunes簽署了您下載的任何應用程序,則使用該校驗和也是一種選擇。

有什麼想法?

回答

0

據我所知,絕對沒有辦法訪問設備上當前登錄的Apple ID。你唯一真正的選擇是維護你自己的用戶名/登錄組合,用戶必須在他們擁有的每個設備上輸入。

+0

確實如此,但一次下載仍然可以與多達5個用戶名/登錄對(如果我沒有提供註銷功能)相關聯。我想限制爲1對。 – Hendrik 2011-01-20 23:04:44

0

我不相信你可以得到Apple ID,但是你可以通過UIDevice uniqueIdentifier方法得到當前設備的ID。

例如:

UIDevice *ourDevice = [UIDevice currentDevice]; 
NSString *uniqueIdentifier = [ourDevice uniqueIdentifier]; 

但是,您應該注意以下幾點(重點煤礦)從上面的鏈接的文檔:

設備的唯一標識符 (有時簡稱UDID的 獨特設備標識符)是由各種硬件 標識符(例如設備序列號 編號)組成的散列值 。保證每個設備都是唯一的 。獨立於設備名稱的UDID是 。對於使用SIM卡(訂戶 識別模塊)卡的設備,該卡的UDID爲 ,與SIM卡無關。

爲了用戶安全和隱私,您的 不得將設備的唯一標識符與用戶帳戶公開關聯。

您可以與應用特定的用戶ID, 用於識別服務器上應用程序特定數據 使用UDID,結合 。

+0

我已經在使用UDID來分別標識每個設備,但我仍然希望每次下載限制一個實例。 – Hendrik 2011-01-20 23:12:28

3

如果您使用IAP(應用程序內購買),您可以將用戶購買綁定到單個收據,並驗證針對Apple服務器的收據。

對於應用商店購買,與IAP相比,Apple允許開發人員允許他們的App Store應用程序在客戶可以放置iTunes帳戶的同一臺設備上以相同的方式運行,但沒有可用的信息到應用程序關於這是客戶的第一次安裝還是他們的第N次。如果該商業模式不適合您,請不要將該應用程序出售到App商店。

相關問題