2014-01-13 85 views
4

首先,我想說,我完全知道uniqueIdentifier已被棄用,並且有identifierForVendor & advertisingIdentifieriOS 7的持久UDID等效嗎?

我的問題是,如果有,這是OK的方式有哪些生活通過像重啓任何一個完全持久設備標識符,應用程序卸載等

目前我們使用identifierForVendor - 但我們的一個產品的主要要求是允許在沒有任何註冊的情況下快速登錄,並且當人們刪除我們的應用程序時,他們的保存會作爲「本地保存」(即使它位於我們的服務器上) - 因爲它們的identifierForVendor發生更改。

感謝

+1

請先詢問後再搜索。這個問題過去曾多次提出過。 http://stackoverflow.com/search?q=iOS+UDID+replacement - 答案几乎總是「使用CFUUID創建自己的UUID並將其保存在鑰匙串中」。 – Jasarien

+0

對不起,我搜索,但沒有找到解決方案 – Ron

+1

當有人升級手機並銷售舊手機時,會發生什麼情況?手機的新用戶突然發現他可以訪問原始手機的所有者的數據。有一個原因,蘋果刪除了_easily_擁有持久的UDID的能力。 – Abizern

回答

5

你能做的最好的是創建一個GUID自己,並把它存儲在:

希望有人找到答案(P,或者甚至有一個答案)有更好的運氣比我keychain爲您的應用程序。這將在卸載和重新啓動後仍然存在,而不是系統擦除。如果用戶登錄到某個可以在服務器上創建關聯的雲服務,例如遊戲中心或Facebook,那麼這個ID在整個系統抹布中通常是穩定的,您可以在那裏查找。然而,請注意不要違反TOS服務。

+0

感謝您的快速回復@jeffamaphone,a幾個問題: 1.你知道任何使用這種方法的應用程序,所以我們可以看到流程,看看它是否符合我們的需求? 2.根據我在Mac上使用Keychain的經驗,它會打開一個令人討厭的彈出窗口,要求您的密碼存儲/從鑰匙串中讀取/讀取某些內容 - 是否也適用於iOS上的鑰匙串? 3.在iOS上使用鑰匙串還需要一個iCloud帳戶? 謝謝! – Ron

+0

1)我公司製作的遊戲,儘管我不想提名。 2)我沒有看到iPhone上發生過這種情況。訪問由配置文件簽名控制,因此只有您的應用可以獲取您的鑰匙串值。我懷疑MacOS沒有被鎖定,因爲你可以運行未簽名的應用程序。 3)不是我所知。這不是一個簡單的概念,所以你最好閱讀我鏈接的文檔。 –

+0

感謝您的回覆@jeffamaphone - 如果您碰巧遇到任何使用此功能的遊戲/應用程序,並且不是由您的公司製作的,請分享,如果可以的話:)謝謝,我會研究它! – Ron