앱 삭제 트래킹 설정하기 - iOS SDK (v4)

알립니다

iOS SDK v4 설치 및 설정에 대한 가이드입니다. 이전 버전은 iOS SDK (v1) 가이드에서 확인해 주세요.

에어브릿지는 앱 이벤트를 최근 6개월 동안 1번이라도 트래킹한 유저를 대상으로 사일런트 푸시를 매일 KST(한국표준시) 0시~1시 사이에 보내서 앱 삭제 여부를 확인합니다. 앱 삭제 이벤트는 에어브릿지 리포트와 원본 데이터 추출 등으로 확인할 수 있습니다.

인증 정보 입력하기

애플 개발자 센터의 인증 정보를 에어브릿지 대시보드에 입력해야 합니다.

애플 개발자 대시보드에서 인증 정보 확인하기

애플 개발자 대시보드에서 아래 인증 정보 4가지를 확인해 주세요.

에어브릿지에 인증 정보 입력하기

에어브릿지의 [설정]>[앱 삭제 이벤트 트래킹]>[iOS 앱 삭제 트래킹]에 애플 개발자 센터에서 한 인증 정보를 모두 입력합니다.

앱 환경 선택하기

인증 정보를 에어브릿지에 모두 입력한 이후에 푸시 토큰을 수집하는 앱 환경을 선택합니다.

선택하는 앱 환경에 따라 수집하는 푸시 토큰이 다릅니다. 예를 들어 Production 환경에서 수집한 푸시 토큰은 Development 환경에서 사용할 수 없습니다.

사일런트 푸시 테스트하기

사일런트 푸시 테스트는 사일런트 푸시가 정상적으로 전송되는지 확인할 수 있는 테스트입니다. ‘사일런트 푸시 테스트’를 클릭하면 입력한 인증 정보로 사일런트 푸시를 디바이스에 정상적으로 전송하는지 확인할 수 있습니다. 사일런트 푸시 테스트는 앱 삭제 이벤트를 측정하거나 생성하지 않기 때문에 에어브릿지 대시보드에서 앱 삭제를 확인할 수 없습니다.

앱 삭제 트래킹을 위해 필요한 인증 정보 중 하나인 Bundle ID는 사일런트 푸시 테스트로만 유효성을 검증할 수 있습니다. 따라서 사일런트 푸시 테스트 진행을 권장합니다.

사일런트 푸시 테스트를 진행하기 위해서는 APNs 푸시 토큰(디바이스 토큰)이 필요합니다. 앱 환경에 따라 수집하는 푸시 토큰이 다릅니다. 사일런트 푸시 테스트를 진행하기 전에 푸시 토큰과 앱 환경을 확인해야 합니다. APNs 푸시 토큰을 확인하는 방법은 애플 개발자 가이드를 참고해 주세요.

에어브릿지에서 디바이스로 사일런트 푸시를 전송하면 성공 메시지 또는 에러 코드를 확인할 수 있습니다. iOS 환경의 사일런트 푸시 테스트로 확인할 수 있는 주요 에러 코드는 아래와 같습니다. 에러 코드에 관한 자세한 내용은 애플 개발자 가이드를 참고해 주세요.

주의하세요

iOS 시뮬레이터(iOS Simulator)에서는 사일런트 푸시 테스트를 진행할 수 없습니다.

에어브릿지 SDK 설정하기

iOS 환경에서 발생한 앱 삭제를 트래킹하기 위해서는 앱에서 사일런트 푸시 알람이 동작되도록 식별자(identifier)를 설정하고 Capabilities를 추가해야 합니다. 또 앱이 앱 삭제 트래킹 목적의 사일런트 푸시 알람을 무시하는 코드를 추가해야 합니다.

Capabilities 활성화하기

1. Xcode에서 [Project 파일]>[Signing & Capabilities]로 이동합니다.

2. '+ Capability'을 클릭합니다. Push Notifications도 선택해 주세요. 그리고 Background Modes를 선택한 후에 Remote Notification을 체크합니다.

푸시 알람 설정하기

registerForRemoteNotifications 함수를 호출하면 앱에서 푸시 알람을 사용할 수 있습니다. 푸시 알람을 기존에 사용하지 않았다면 해당 함수를 호출해 주세요.

1234567
func application(_ application: UIApplication,
                 didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool
{
    ...
    UIApplication.shared.registerForRemoteNotifications()
    ...
}

설정 이후에는 사일런트 푸시 알람을 포함한 푸시 알람이 전송될 때마다 application(_:didFinishLaunchingWithOptions:) 함수가 항상 호출됩니다. 사일런트 푸시 알람이 전송되면 앱이 백그라운드(Background)로 실행된 이후에 해당 함수가 호출됩니다. 이미 앱이 백그라운드로 실행된 상태이기 때문에 앱이 포어그라운드(Foreground)로 변경되더라도 함수가 다시 호출되지 않습니다.

application(_:didFinishLaunchingWithOptions:) 함수 호출 여부는 launchOption으로 확인할 수 있습니다. 아래 코드를 참고해 주세요.

12345678
func application(
    _ application: UIApplication,
    didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
    let key = UIApplication.LaunchOptionsKey.remoteNotification
    let isLaunchRemoteNotification: Bool = launchOptions?[key] != nil
}

APNs Push Token 전송하기

APNs Push Token 이 생성되면 해당 토큰을 registerPushToken 함수를 호출해 SDK에 전달해 주세요.

12345
func application(_ application: UIApplication,
                 didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data)
{
    AirBridge.registerPushToken(deviceToken)
}

에어브릿지 사일런트 푸시 알람 무시 설정하기

에어브릿지가 앱 삭제 트래킹을 위해 보내는 사일런트 푸시 알람은 유저 앱에 나오지 않아야 하는 알람입니다. 앱은 해당 푸시 알람을 무시해야 합니다. 아래 코드를 참고해 주세요.

12345678910
func application(_ application: UIApplication,
                 didReceiveRemoteNotification userInfo: [AnyHashable : Any],
                 fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void)
{
    if Airbridge.isUninstallTrackingNotification(userInfo) {
        return
    }
  
    ...
}

앱 삭제 트래킹 시작하기

에어브릿지 대시보드에 인증 정보를 입력하고 에어브릿지 SDK 설정을 마치면 앱 삭제 트래킹 토글을 활성화할 수 있습니다. 토글을 활성화하면 앱 삭제 트래킹이 시작됩니다.

앱 삭제에 관한 자세한 내용은 에어브릿지 가이드에서 확인해 주세요.

도움이 되었나요?

더 필요한 내용이 있나요?