Flutter SDK Uninstall tracking 설정가이드
DashboardUser GuideDataspecStatus Page

Flutter SDK Uninstall tracking 설정가이드

개요

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

Fluttter SDK 사용시 Firebase_messaging 을 사용한 uninstall tracking 설정을 위해 가이드를 제공합니다.

📘

앱 삭제 추적 설정은 Airbridge Flutter SDK v3.0.2 이후 버전 부터 사용 가능합니다.

  • Airbridge Android SDK v2.6.0
  • Airbridge iOS SDK v1.28.2

Firebase console 설정

  • Firebase console 에서 프로젝트 설정 > 클라우드 메세징 에 APN 인증키(.p8) 를 등록합니다.
  • 프로젝트 설정 > 일반
    • google-services.jsonandroid/app 에 copy
    • GoogleService-Info.plistios/Runner 에 copy

Airbridge 대시보드 설정

  • Settings > Uninstall tracking 에 정보를 입력합니다.
    • android
      • 서버 키
      • 발신자 ID
    • iOS
      • APNs 인증키
      • Key ID
      • Bundle ID
      • Team ID (App ID Prefix)

Code snippet

Firebase 를 먼저 초기화 시킨 후 platform 별로 token 을 받아서 Airbridge.registerPushToken 을 통해 Airbridge 에 push token 을 등록 한다.

void main() {
  WidgetsFlutterBinding.ensureInitialized();

  init();
  runApp(App());
}

Future<void> init() async {  
 
  await Firebase.initializeApp();

  String? token;
  if (defaultTargetPlatform == TargetPlatform.iOS) {  
    await FirebaseMessaging.instance.requestPermission(  
      alert: true,  
      announcement: false,  
      badge: true,  
      carPlay: false,  
      criticalAlert: false,  
      provisional: false,  
      sound: true,  
    );  
    token = await FirebaseMessaging.instance.getAPNSToken();  
  } else {    
    token = await FirebaseMessaging.instance.getToken();
  }

  if (token != null) {  
    Airbridge.registerPushToken(token);  
  }
}

Push 를 받아서 처리하는 쪽에 아래와 같은 코드를 추가 하여 uninstall-tracking silent push 일 경우 무시할 수 있도록 처리한다.

Future<void> _firebaseMessagingHandler(RemoteMessage message) async {
  if(message.data.containsKey("airbridge-uninstall-tracking")) {
    // ignored uninstall-tracking silent push message
  } else {
    // TODO: code here
  }
}