iOS追蹤裝置和使用者

來源:互聯網
上載者:User

標籤:

原文地址:http://www.cnblogs.com/BigPolarBear/p/3359526.html

要識別使用者,首先就是要選擇一個標識符,通過這個標識符來識別這個使用者的裝置(而不是使用者),這個標識符要能夠保證一個裝置上返回的值是一樣的,並且在其他裝置上不會出現相同的值。

在iOS7之前,曾經有過很多方法來識別使用者的裝置,從最原始的裝置udid、mac地址,到被各廣告統計平台廣泛使用的開源方案OpenUDID。

但隨著AppStore開始拒絕接受使用udid的應用,到mac地址在iOS7上所有裝置上都返回相同的值,再到iOS7上對剪貼簿的限制,導致OpenUDID無法被不同應用共用相同的值,註定了上面提到的這些id們不得不退出曆史的舞台。

隨著iOS7快速佔據了半壁江山,裝置id的控制權終於徹底回到了Apple手中,同時也讓使用者能夠把控自己的隱私,充分表明了是蘋果對使用者隱私保護的決心。

好了,其實就一個問題:iOS7時代我們用什麼來追蹤和識別使用者?

 

先給結論
  • idfa: 適用於對外:例如廣告推廣,換量等跨應用的使用者追蹤等
  • idfv: 適用於對內:例如分析使用者在應用內的行為等

PS:塵埃落定,跟著Apple走,大家不用再猶豫了。

 

再給解釋idfa
  • 全名:advertisingIdentifier
  • 代碼:

      #import <AdSupport/AdSupport.h>  NSString *adId = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
  • 來源:iOS6.0及以後

  • 說明:直譯就是廣告id, 在同一個裝置上的所有App都會取到相同的值,是蘋果專門給各廣告供應商用來追蹤使用者而設的,使用者可以在 設定|隱私|廣告追蹤 裡重設此id的值,或限制此id的使用,故此id有可能會取不到值,但好在Apple預設是允許追蹤的,而且一般使用者都不知道有這麼個設定,所以基本上用來監測推廣效果,是戳戳有餘了。
  • 注意:由於idfa會出現取不到的情況,故絕不可以作為業務分析的主id,來識別使用者。
idfv
  • 全名:identifierForVendor
  • 代碼:

      NSString *idfv = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
  • 來源:iOS6.0及以後

  • 說明:顧名思義,是給Vendor標識使用者用的,每個裝置在所屬同一個Vender的應用裡,都有相同的值。其中的Vender是指應用供應商,但準確點說,是通過BundleID的DNS反轉的前兩部分進行匹配,如果相同就是同一個Vender,例如對於com.somecompany.appone,com.somecompany.apptwo 這兩個BundleID來說,就屬於同一個Vender,共用同一個idfv的值。和idfa不同的是,idfv的值是一定能取到的,所以非常適合於作為內部使用者行為分析的主id,來標識使用者,替代OpenUDID。
  • 注意:如果使用者將屬於此Vender的所有App卸載,則idfv的值會被重設,即再重裝此Vender的App,idfv的值和之前不同。
 曆史上的英雄們UDID

裝置唯一識別碼(Unique Device Identifier)之前被各種國內外統計平台,應用開發商廣泛使用,後Apple從2013年05月01日起拒絕接受使用UDID的應用後,立斃!

Mac地址

每一個網卡都有一個唯一的標識,即Mac地址,顯然用來標識一個手機是綽綽有餘的了,也有一些開源的方案也用到了它,國內UMTrack等也用它作為過主id,隨著iOS7返回同樣的值後,不得不退隱江湖。

OpenUDID

在Apple拒絕UDID後,OpenUDID作為獨立於Apple的開源方案,被廣大的開發人員所接受,各大統計廣告平台都從UDID等方案切換到OpenUDID的方案(看來大家都不想完全被Apple束縛啊),但不幸的事,同樣由於iOS7對剪貼簿的限制,導致同一個裝置上應用間,無法再共用一個OpenUDID,即OpenUDID作為裝置唯一標識的能力被大大削弱。也可以看到隨著iOS7的來臨,各廣告平台都迅速更新自己的SDK,來切換到蘋果的idfa的方案上來。

其他

CFUUID、NSUUID等自己產生,自己儲存管理的就不細說啦。

DeviceToken

這是推送用的令牌,使用者如果沒開推送,或者拒絕了,這個就沒有了!

iOS追蹤裝置和使用者

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.