Amplitude 연동 관련

Amplitude SDK와 Airbridge SDK 둘다 사용하여 이벤트 수집중이고, Airbridge에서 Amplitude Integration (V2)로 데이터를 연동중입니다. 하지만 Device 매칭이 제대로 되지 않아 데이터 분석에 어려움이 있습니다. 어떻게 해야하나요?

Amplitude SDK와 Airbridge SDK가 사용하는 Device ID가 달라서 그렇습니다.(Amplitude Device ID는 기본 Random Generated, Airbridge Device ID는 결정 로직 참고) 이 경우 Amplitude Device ID를 Fetching하여 Airbridge에 User Alias에 amplitude_device_id로 넣어줘야합니다. Airbridge x Amplitude Integration에서는 해당 Alias를 Airbridge Device ID보다 우선하여 Amplitude의 Device ID로 전송하게 됩니다.

1. Amplitude Device ID Fetching 하기

2. Airbridge User Alias에 넣기

이하 샘플 코드입니다.

airbridge.init({
    ...
    user: {
        alias: {
            amplitude_device_id: Amplitude.getInstance().getDeviceId(),
        },
    },
    ...
});
Airbridge.getCurrentUser().setAlias("amplitude_device_id", Amplitude.getInstance().getDeviceId());
[AirBridge.state addUserAliasWithKey:@"amplitude_device_id" value:Amplitude.instance.deviceId];

위와 같이 넣어주시면 아래의 우선순위로 HTTP API V2를 통해 amplitude_device_id를 전달하게 됩니다.

  1. user.alias.amplitude_device_id
  2. device.deviceUUID (App)
  3. browser.clientID (Web)