那麼,有什麼辦法可以解決這個問題呢?這裡不說5.0之前的一切,只說6.0之後的如何做到。
下面提供的只是**片段,不是完整的**!
蘋果在ios6.0版本之後,在uidevice提供了以下屬性:
@property(nullable,nonatomic,readonly,strong)nsuuid*identifierforvendor
通過這個屬性,就可以獲取到uuid:
/* return a string description of the uuid, such as "e621e1f8-c36c-495a-93fc-0c247a3e6e5f" */
@property(readonly,copy)nsstring*uuidstring;
b907009b-8c63-4ca8-b3fb-b2724ae96dd5
b907009b-8c63-4ca8-b3fb-b2724ae96dd5
1a73d3a3-3cd6-4655-8566-042fe7c8b2ac
果然發生了變化了。
蘋果官方文件這麼說的:
意思大概就是說:
那麼如何解決這種改變呢?
解決方案就是能所生成的uuidstring儲存到keychain中,使用同乙個access group、同乙個identifier。每次獲取uuid,都先從keychain中獲取,若為空,則通過uidevice獲取uuidstring並 儲存到keychaing,**版本如下:
+(nsstring*)uuid
returnuuid;
}ios 使用nsurlcredential 建立udid
+ (nsstring*)createuuidstringelse{
nsstring* udid = [self createuuidstring];
credential = [nsurlcredential credentialwithuser:@"sina" password:udid persistence:nsurlcredentialpersistencepermanent];
[[nsurlcredentialstorage sharedcredentialstorage] setcredential:credential forprotectionspace:protectionspace];
return udid;
IOS獲取裝置唯一標識
wwdc 2013已經閉幕,ios7 beta隨即發布,介面之難看無以言表.簡直就是山寨android。更讓ios程式猿悲催的是,裝置唯一標識的mac address在ios7中也失效了。ios系統中,獲取裝置唯一標識的方法有很多 一.udid unique device identifier ud...
獲取iOS裝置唯一標識
1.已禁用 uidevice uniqueidentifier 3.mac位址不能再用來設別裝置 還有乙個生成ios裝置唯一標示符的方法是使用ios裝置的media access control mac 位址。乙個mac位址是乙個唯一的號碼,它是物理網路層級方面分配給網路介面卡的。這個位址蘋果還有其...
iOS獲取裝置唯一標識
目前市面應用普遍採用使用者體驗,涉及到部分重要功能時候才提醒使用者註冊賬戶,而使用者之前的操作,比如收藏,點讚,關注等內容需要同時關聯進註冊的賬戶,那麼根據什麼記錄使用者的操作資訊就尤為重要。下面就列出我之前收集資料總結的方案。udid unique device identifier ios 裝置...