— 広告ID(IDFA)を送信する
Usage
KARTE SDKによる広告ID(IDFA)の送信を有効にしたい場合は、本記事を参考に実装をしてください。
なおSDKには広告IDを直接取得する機能はありません。
そのためアプリケーション側に広告IDを取得する処理を実装する必要があります。
広告IDの送信について
広告IDの送信にはいくつか注意事項がございます。
送信処理を実装する前に、まず こちら の記事をご覧ください。
事前準備
AdSupport.framework
をビルドターゲットに追加してください。
実装
- Delegateを実装する
SDK が提供するIDFADelegate
を実装します。
ここでは例として AppDelegate に実装する形で進めます。
import AdSupport
import KarteCore
import AppTrackingTransparency
...
extension AppDelegate: IDFADelegate {
var isAdvertisingTrackingEnabled: Bool {
if #available(iOS 14, *) {
return ATTrackingManager.trackingAuthorizationStatus == .authorized
} else {
return ASIdentifierManager.shared().isAdvertisingTrackingEnabled
}
}
var advertisingIdentifierString: String? {
return ASIdentifierManager.shared().advertisingIdentifier.uuidString
}
}
#import "AppDelegate.h"
#import <AdSupport/AdSupport.h>
#import <AppTrackingTransparency/AppTrackingTransparency.h>
@import KarteCore;
@interface AppDelegate () <KRTIDFADelegate>
@end
@implementation AppDelegate
...
- (BOOL)isAdvertisingTrackingEnabled {
if (@available(iOS 14.0, *)) {
return ATTrackingManager.trackingAuthorizationStatus == ATTrackingManagerAuthorizationStatusAuthorized;
} else {
return [[ASIdentifierManager sharedManager] isAdvertisingTrackingEnabled];
}
}
- (NSString *)advertisingIdentifierString {
return [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
}
@end
- SDKの初期化を行う
初期化オプションを指定してSDKの初期化を行います。
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
let configuration = Configuration { (configuration) in
configuration.idfaDelegate = self
}
KarteApp.setup(appKey: "アプリケーションキー", configuration: configuration)
...
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
KRTConfiguration *configuration = [KRTConfiguration configWithConfigurator:^(KRTConfiguration * _Nonnull configuration) {
[configuration setIdfaDelegate:self];
}];
[KRTApp setupWithAppKey:@"アプリケーションキー" configuration:configuration];
...
}
確認
任意のイベントの app_info.system_info.idfa
フィールドに値が含まれていれば、正しく実装されております。
詳細な確認方法については、イベント画面について をご覧ください。
Updated 12 months ago