IDFA 全稱為Identity for Advertisers,即廣告標識符。用來標記用戶,目前最廣泛的用途是用於投放廣告、個性化推薦等。
廣告
關於IDFA在iOS的重要性,可以見我先前文章:IDFA、IDFV、UUID。
在iOS13及以前,系統會預設為用戶開啟允許追踪設置,我們可以簡單的透過程式碼來獲取到用戶的IDFA標識符。
iOS14之後,系統會預設為用戶關閉廣告追踪權限。
廣告
對於這種情況,我們需要去請求用戶權限。首先需要在Info.plist中配置" NSUserTrackingUsageDescription “及描述文案,接著使用AppTrackingTransparency框架中的ATTrackingManager中的requestTrackingAuthorizationWithCompletionHandler請求用戶權限,在用戶授權後再去訪問IDFA才能夠獲取到正確資訊。
/** Theme: iOS 14 IDFA IDE: Xcode 12 Language: Objective C Date: 109/10/22 Author: HappyMan Blog: https://cg2010studio.com/ */ #import <AppTrackingTransparency/AppTrackingTransparency.h> #import <AdSupport/AdSupport.h> - (void)testIDFA { if (@available(iOS 14, *)) { [ATTrackingManager requestTrackingAuthorizationWithCompletionHandler:^(ATTrackingManagerAuthorizationStatus status) { if (status == ATTrackingManagerAuthorizationStatusAuthorized) { NSString *idfaString = [[ASIdentifierManager sharedManager] advertisingIdentifier].UUIDString; NSLog(@"idfaString: %@", idfaString); } }]; } else { // 使用原方式存取 IDFA } }
編譯執行後~
廣告
idfaString: 40718478-2523-49FF-B708-F3AFD13E3684X
參考:iOS14 適配及部分解決方案、Facebook登報槓上蘋果!遭iOS限制的IDFA是什麼?為什麼能斷了千萬廣告商財路?。
廣告
Comments on: "[iOS] iOS 14 IDFA" (1)
老闆今天問我iOS 14行銷方面的問題~剛好這篇文章來說明!🤠
讚讚