SDKã®åæå
ãã®ããã¥ã¡ã³ãã¯å€ãããŒãžã§ã³ã®iOS SDK v1ã«ã€ããŠèšèŒããŠããŸã
iOS SDK v1㯠2021/05/11ã§ãµããŒãçµäºãšãªããŸãã
SDK v1 ããã®ã¢ããã°ã¬ãŒãã«ã€ããŠã¯ããŸã SDK v1ããv2ã®ã¢ããã°ã¬ãŒãæ¹æ³ ãã芧ãã ããã
SDK ãå©çšããããã«ã¯ãã¢ããªèµ·åæã«åæåãè¡ãå¿ èŠããããŸãã
SDK ãåæåãã
ãªãã·ã§ã³ãæå®ããåæåãã
AppDelegate
ã§ KarteTracker
ãã€ã³ããŒãããapplication:didFinishLaunchingWithOptions:
ã¡ãœããå
ã§ SDK ã®åæåãè¡ããŸãã
import KarteTracker
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
KarteTracker.setup(appKey: "YOUR_APP_KEY")
...
}
}
#import "AppDelegate.h"
#import <KarteTracker/KarteTracker.h>
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[KarteTracker setupWithAppKey:@"YOUR_APP_KEY"];
...
}
@end
Application Key ã«ã€ããŠ
åæåæã«æå®ãã
Application Key
ã¯ãKARTE管çç»é¢ã«èšèŒãããŠããAPI_KEY
ãšã¯ç°ãªããŸãã
ããŒã¯å¶æ¥æ åœãããéãããŠããã¡ãŒã«ã«èšèŒãããŠãããŸãã®ã§ããã¡ããã確èªãã ããã
ãªãã·ã§ã³ãæå®ããŠåæåãã
åæåæã«ãªãã·ã§ã³ãæå®ããããšã§ãäžéš SDK ã®æåã倿Žããããšãå¯èœã§ãã
ãªãå©çšå¯èœãªãªãã·ã§ã³ã«ã€ããŠã¯ãããŒãžäžéšã®åæåãªãã·ã§ã³äžèЧãã芧ãã ããã
let config = KarteTrackerConfig.configure { (builder) in
builder.isEnabledTrackingIdfa = false
}
KarteTracker.setup(appKey: "YOUR_APP_KEY", config: config)
KarteTrackerConfig *config = [KarteTrackerConfig configureWithBuilder:^(KarteTrackerConfigBuilder * _Nonnull builder) {
builder.enableTrackingIdfa = NO;
}];
[KarteTracker setupWithAppKey:@"YOUR_APP_KEY" withConfig:config];
URLã¹ããŒã ããã³ãã«ãã
KARTE ã§ç¬èªã«å®çŸ©ããURLã¹ããŒã ãåŠçããããã«ãURLã¹ããŒã ãã³ãã©ãå®è£
ããå¿
èŠããããŸãã
管çç»é¢ã«è¡šç€ºããQRã³ãŒããå©çšããŠãSDKã®ç¹å®ã®æ©èœãåŒã³åºãéã«æ¬å®è£
ãå¿
èŠãšãªããŸãã
ãªã iOS13 ããå©çšå¯èœãª UISceneDelegate ãç¬èªã«å®è£
ããŠããå Žåã¯ãSceneDelegate base
ã®å®è£
ãåç
§ããŠãã ããã
import KarteTracker
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
KarteUrlSchemeHandler.handle(url)
return true
}
}
#import "AppDelegate.h"
#import <KarteTracker/KarteTracker.h>
#import <KarteTracker/KarteUrlSchemeHandler.h>
@implementation AppDelegate
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options
{
[KarteUrlSchemeHandler handle:url];
return YES;
}
@end
import UIKit
import KarteTracker
@available(iOS 13.0, *)
class SceneDelegate: UIResponder, UIWindowSceneDelegate {
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
KarteUrlSchemeHandler.handle(connectionOptions.urlContexts.first?.url)
}
func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {
KarteUrlSchemeHandler.handle(URLContexts.first?.url)
}
}
#import "SceneDelegate.h"
#import <UIKit/UIKit.h>
#import <KarteTracker/KarteTracker.h>
#import <KarteTracker/KarteUrlSchemeHandler.h>
@interface SceneDelegate () <UIWindowSceneDelegate>
@end
@implementation SceneDelegate
- (void)scene:(UIScene *)scene willConnectToSession:(UISceneSession *)session options:(UISceneConnectionOptions *)connectionOptions {
[KarteUrlSchemeHandler handle:connectionOptions.URLContexts.anyObject.URL];
}
- (void)scene:(UIScene *)scene openURLContexts:(NSSet<UIOpenURLContext *> *)URLContexts
{
[KarteUrlSchemeHandler handle:URLContexts.anyObject.URL];
}
@end
åæåãªãã·ã§ã³äžèЧ
SDK ã®åæåæã«æå®å¯èœãªãªãã·ã§ã³ã®äžèЧã§ãã
ãªãéåžžã¯ããã©ã«ãã®èšå®ã§åé¡ãããŸããã
ãªãã·ã§ã³ | ããã©ã«ãå€ | å 容 |
---|---|---|
isEnabledTrackingAppLifecycle | true | ã¢ããªã±ãŒã·ã§ã³ã®ååèµ·åã€ãã³ãïŒ true ã§éä¿¡ãããŸãã |
isEnabledTrackingAppOpen | true | ã¢ããªã±ãŒã·ã§ã³èµ·åã€ãã³ãïŒ true ã§éä¿¡ãããŸãã |
isEnabledTrackingIdfa | false | åºå IDïŒIDFAïŒãéä¿¡ãããã©ãããæå®ããããã®ãªãã·ã§ã³ã true ã§éä¿¡ãããŸãã â» 1 SDK v1.5.5以äžã§ã¯ã |
isEnabledTrackingCrashError | true | ã¢ããªã±ãŒã·ã§ã³ã®ã¯ã©ãã·ã¥ã€ãã³ãïŒ true ã§éä¿¡ãããŸãã |
isEnabledFCMTokenResend | false | SDK åæåæã« FCM ããŒã¯ã³ãèªåéä¿¡ãããã©ãããæå®ããããã®ãªãã·ã§ã³ã true ã§éä¿¡ãããŸãã |
isEnabledOptOutDefault | false | SDK åæåæã«ãªããã¢ãŠããããã©ãããæå®ããããã®ãªãã·ã§ã³ã true ã§ãªããã¢ãŠããããŸãã |
isDryRun | false | ã€ãã³ãã®èšæž¬ãè¡ããã©ãããæå®ããããã®ãªãã·ã§ã³ã true ã§èšæž¬ãè¡ãããŸããã |
IDFADelegate | nil | IDFAã®ååŸåŠçã®å§è²å ã€ã³ã¹ã¿ã³ã¹ãæå®ãããªãã·ã§ã³ã IDFAã®éä¿¡ãå¿
èŠãªå Žåã¯ã |
isEnabledVisualTracking | false | ããžã¥ã¢ã«ãã©ããã³ã°ãæå¹åã«ããããã®ãªãã·ã§ã³ã trueã§ããžã¥ã¢ã«ãã©ããã³ã°ãæå¹ãšãªããŸãã |
IDFAã®éä¿¡æ¹æ³
v1.5.5 以éã§IDFAã®éä¿¡ãè¡ãããã«ã¯ã以äžã®å®è£ ãè¡ãå¿ èŠããããŸãã
import KarteTracker
import AdSupport
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
let config = KarteTrackerConfig.configure { (builder) in
builder.idfaDelegate = self
}
KarteTracker.setup(appKey: "YOUR_APP_KEY", config: config)
...
}
}
extension AppDelegate: KarteIDFADelegate {
func isAdvertisingTrackingEnabled() -> Bool {
return true
}
func advertisingIdentifierString() -> String? {
guard ASIdentifierManager.shared().isAdvertisingTrackingEnabled else {
return nil
}
return ASIdentifierManager.shared().advertisingIdentifier.uuidString
}
}
#import "AppDelegate.h"
#import <KarteTracker/KarteTracker.h>
#import <AdSupport/ASIdentifierManager.h>
@interface AppDelegate () <KarteIDFADelegate>
@end
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
KarteTrackerConfig *config = [KarteTrackerConfig configureWithBuilder:^(KarteTrackerConfigBuilder * _Nonnull builder) {
builder.IDFADelegate = self;
}];
[KarteTracker setupWithAppKey:@"YOUR_APP_KEY" withConfig:config];
...
}
- (BOOL)isAdvertisingTrackingEnabled {
return YES;
}
- (NSString *)advertisingIdentifierString {
if ([[ASIdentifierManager sharedManager] isAdvertisingTrackingEnabled]) {
return [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
}
return nil;
}
@end
ãªã AdSupport.framework
ã远å ããå¿
èŠããããŸãã
Build Phases > Link Binary With Libraries ãããã¬ãŒã ã¯ãŒã¯ã®è¿œå ãè¡ãªã£ãŠãã ããã
Updated over 1 year ago