iOS6 UDID - identifierForVendor具有優於identifierForAdvertising的優勢嗎?


Answers

用戶可以限制在手機上使用廣告跟踪。 請參閱設置>常規>關於>廣告下關於選擇退出機制的文章

新的ASIdentifierManager類有一個屬性ASIdentifierManager ,根據用戶是否有限的廣告跟踪,該屬性返回true或false。 即使設備的廣告標識符由advertisingIdentifier屬性返回,而不管退出,但如果用戶選擇退出,則不應使用該標識符。

因此,identifierForVendor的優勢在於,無論用戶選擇加入還是退出廣告跟踪,您都可以隨時訪問並有權使用此ID。

Question

Apple正在更改其iOS6的隱私設置並且不贊成使用設備UUID(UDID)。 根據WWDC演示文稿和文檔, UIDevice類中有兩個UDID替換項:

-identifierForVendor

  • 來自同一開發人員的應用程序之間的ID相同。
  • 刪除該團隊ID的最後一個應用後刪除。
  • 備份。

-identifierForAdvertising

  • 設備的獨特之處。
  • 適用於所有應用程序; 用於廣告 - iAd已從iOS 6及更高版本的UDID轉換而來。
  • 使用“清除所有內容和設置”進行重置。
  • 備份。

在我看來, -identifierForVendor不如-identifierForAdvertising因為它將在最後一次從供應商卸載應用程序時被重置,並被“清除所有內容和設置”。

-identifierForVendor具有over -identifierForAdvertising優點嗎?




要根據iOS 6中設備的唯一標識符創建uniqueString:

#import <AdSupport/ASIdentifierManager.h>

NSString *uniqueString = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
NSLog(@"uniqueString: %@", uniqueString);



它們是兩個不同的ID,用於兩個不同的目的。 我認為identifierForVendor可以用來做需要應用程序鏈接到特定用戶/設備的事物,例如提供推送通知和更新用戶的應用程序數據服務器端(比如他們的分數或任何其他數據被存儲為他們)。
identifierForAdvertising應該用於諸如有針對性的廣告之類的事情,並且還要檢查特定廣告活動的有效性(檢查由於特定廣告而知道哪些設備安裝了應用程序)。




如果設備上沒有更多的應用程序,用戶可以在設置中更改identifierForAdvertising,重新安裝應用程序後更改identifierForVendor。

這是替代方案,也是獲得或持久性的最佳解決方案,交叉安裝設備標識符:

說明: https://blog.onliquid.com/persistent-device-unique-identifier-ios-keychain/https://blog.onliquid.com/persistent-device-unique-identifier-ios-keychain/

代碼: https://gist.github.com/miguelcma/e8f291e54b025815ca46https://gist.github.com/miguelcma/e8f291e54b025815ca46




identifierForAdvertising在跟踪方面可能更勝一籌,但可能會受到用戶當前或未來的選擇退出。 另一方面, identifierForVendor不太可能是用戶的主題。




Links