想要追蹤、統計、分析用戶,自然離不開用戶唯一識別碼,這是每個公司都會面臨的問題。在歷史上唯一識別碼很多,如UDID、MAC位址、OpenUDID等,這裡就不再一一介紹它們是怎麼被淘汰,現在好用的只剩下了IDFA、IDFV、UUID+keyChain。
我每次送審App,最後itunes connect都會問,有沒有使用IDFA,若沒有正確回答,那麼這個版本就要被拒絕!(除了log,我不知道apple審核員還會怎麼查證)可見這個議題是多麽重要,所以有必要瞭解一下!
IDFA(Advertising Identifier):可以理解為廣告id,Apple提供的用於追蹤用戶的廣告識別碼。
缺點:用戶可透過「設定-隱私-廣告-還原廣告識別碼」還原,之後會得到新的識別碼。
需求:iOS>=6.0。
使用:
#import <AdSupport/AdSupport.h>
[[ASIdentifierManager sharedManager] advertisingIdentifier].UUIDString;
—
IDFV(identifierForVendor):Apple提供給Vendor的唯一識別碼,Vendor代表了應用開發商,實際使用時,一個Vendor是CFBundleIdentifier(反轉DNS格式)的前兩部分。例如,com.happystudio.text和com.happystudio.image得到的IDFV是相同的,因為它們的CFBundleIdentifier前兩部分是相同的。
缺點:把同一個開發商的所有應用移除後,再次安裝取到的IDFV會不一樣。假設手機上裝有Google的兩款app:Google、Youtube。
需求:iOS>=6.0
使用:
[[[UIDevice currentDevice] identifierForVendor] UUIDString];
—
UUID(Universally Unique Identifier):通用唯一識別碼,每次生成均不一樣,所以第一次生成後需要保存到鑰匙串,這樣即使應用移除再重裝,仍然可以從鑰匙串得到它。
使用:
UUID生成方法很多種,這裡只寫出一種。生成一個UUID:
[[NSUUID UUID] UUIDString];
以上三種我實際運行過,會依照其規則產生不一樣的識別碼。
參考:iOS8可用的识别用户方式(idfa、UUID、idfv)、使用UUID+KeyChain記錄設備唯一標識、iOS唯一標示符引導、什麼是IDFA?之於線上廣告,他的重要性何在?。
Comments on: "IDFA、IDFV、UUID" (2)
[…] 關於IDFA在iOS的重要性,可以見我先前文章:IDFA、IDFV、UUID。 […]
讚讚
[…] 而IDFA其實就是讓我們在iOS中,用來識別每一個行銷受眾的網路身份證,想起先前有研究過IDFA、IDFV、UUID。 […]
讚讚