권장 승차 공유 앱 이벤트

요약: 승차 공유 앱에 대해 제안된 인앱 이벤트를 기록하여 사용자 여정 내내 사용자의 질을 측정합니다.

InApp_Events_ride.png 승차 공유

승차 공유는 최근에 점점 더 인기를 얻고 있습니다. 특히 많은 사람이 차를 소유하지 않는 도심 지역에서 더욱 인기입니다. 기록을 제안하는 대표적인 이벤트는 승차 요청 및 예약입니다.

이벤트 기록에 의해 다음을 확인할 수 있습니다.

  • 승객과 운전사가 어떻게 서로 소통하는지 알 수 있습니다.
  • 차량 공유 서비스를 더 많이 이용하는 국가를 알 수 있습니다.
  • 요금, 탑승 횟수, 탑승 거리 등의 지표

 중요!

  • 인앱 이벤트 구현과 관련한 마케터용 지침을 반드시 읽어보십시오.
  • 구현 프로세스를 간소화하려면 본 문서에서 설명하는 모든 일반적인 인앱 이벤트가 포함된  CSV 파일을 다운로드한 다음 비즈니스 요구에 따라 이벤트를 수정하십시오. 완료되면 파일을 개발사와 공유하십시오.
  • 본 문서에 포함된 각 권장 이벤트에 대해 iOS, 안드로이드 및 Unity 개발자를 위한 코드 샘플이 있습니다.
  • 개발사에 대한 자세한 지침은 앱스플라이어 개발자 허브에서 확인할 수 있습니다.

인앱 이벤트 기록에 대한 자세한 정보는 리치 인앱 이벤트 가이드를 참조하십시오.

Flowchart_for_recommended_events_ride_hailing_app_user_journey

사전 정의된 이벤트에 대한 권장 구조

다음 섹선에서는 승차공유 수직 구조에 일반적인 이벤트 구조 목록을 제공합니다. 각 구조에는 사용할 미리 정의된 이벤트 이름과 제안된 이벤트 파라미터가 포함됩니다. 인앱 이벤트에는 비즈니스 요구를 충족하는 이벤트 파라미터가 포함될 수 있습니다.

가입 완료(af_complete_registration)

목적

이 이벤트는 다음을 제공합니다.

  • 사용자가 선호하는 가입 방법이 무엇인지 알 수 있습니다.
  • 앱을 다운로드하고 설치한 후에 얼마나 많은 사용자가 가입하는지 알 수 있습니다.
  • 앱을 가장 많이 이용하는 사용자가 속한 국가를 파악하여 국가 전반의 등록 트렌드를 알 수 있습니다.

트리거

사용자가 등록 프로세스를 완료한 시간

이벤트 파라미터

이름 설명 예시 값
af_registration_method 사용자가 가입하는 방법 또는 플랫폼 페이스북
country_code 국가 코드(전화 코드) 66

코드 예

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.REGSITRATION_METHOD, "shoes");
eventValue.put("country_code", "66");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.COMPLETE_REGISTRATION, eventValue);

로그인(af_login)

목적

등록된 사용자의 잔존율 파악

트리거

사용자가 성공적으로 로그인한 시간

이벤트 파라미터

추가 파라미터 없이 전송 가능

코드 예

Android iOS - Objective C iOS - Swift Unity

AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.LOGIN, null);

결제 정보 추가(af_add_payment_info)

목적

사용자 분류에 도움을 줍니다. 다음을 할 수 있습니다. 

  • 사용자가 결제 정보를 추가하는 데 얼마나 걸리는지 알 수 있습니다.
  • 가장 선호하는 결제 수단(예: 신용카드 또는 전자 지갑) 
  • 많이 사용되는 결제 수단의 제공업체와 캠페인을 설정하여 협업할 수 있습니다.

트리거

사용자가 계정에 결제 정보를 성공적으로 추가하는 시기

이벤트 파라미터

이름 설명 예시 값
af_success 지급 방법의 성공 여부 true
credit_card_type 신용카드 유형(옵션) 비자, 마스터카드
payment_method_type 결제 수단 유형 신용 카드, 전자 지갑

코드 예

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.SUCCESS, true);
eventValue.put("credit_card_type", "Visa");
eventValue.put("payment_method_type", true);
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.ADD_PAYMENT_INFO, eventValue);

사용한 크레딧(af_spent_credits)

목적

탑승 예약 완료 이벤트credits_earned라는 이름의 파라미터를 포함합니다. 이 파라미터는 탑승할 때마다 승객이 받는 크레딧을 기록합니다. 승객은 크레딧을 바우처나 요금 할인으로 교환할 수 있습니다.

이 이벤트는 다음을 제공합니다.

  • 얼마나 많은 승객이 크레딧을 바우처로 교환했는지 알 수 있습니다.
  • 승객이 선호하는 바우처나 요금 할인은 어떤 것인지 알 수 있습니다.

트리거 

승객이 크레딧을 소비할 때

이벤트 파라미터

이름 설명 예시 값
af_content 바우처 또는 할인 유형 단일 영화 티켓
credits_used 사용한 크레딧 1000
credits_remaining 계정에 남은 크레딧 2090
invoice_id

사용한 크레딧에 대해 생성된 청구서의 ID

KO215123SD

코드 예

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.CONTENT, "Single movie ticket");
eventValue.put("credits_used", 1000);
eventValue.put("invoice_id", "");
eventValue.put("credits_remaining", "KO215123SD");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), AFInAppEventType.SPENT_CREDITS , eventValue);

사용자정의 이벤트에 대한 권장 구조

다음 섹션에서는 사용자정의 이벤트 이름과 사용할 제안된 이벤트 파라미터가 포함된 이벤트 구조 목록을 제공합니다. 인앱 이벤트에는 비즈니스 요구를 충족하는 이벤트 파라미터가 포함될 수 있습니다.

승차 예약 요청함(ride_booking_requested)

목적

이 이벤트는 다음을 제공합니다.

  • 인기 목적지를 알 수 있습니다.
  • 사람들이 어디에서 어디로 가는지 트렌드를 알 수 있습니다.
  • 평균 탑승 거리를 알 수 있습니다.
  • 가장 많은 사용자가 있는 도시, 지역, 국가를 알 수 있습니다.

추가로, 다른 예약 관련 이벤트와 함께 이 이벤트를 기록함으로써 성공한 건을 기록할 수 있습니다. 그런 다음, 성공한 건을 성공하지 못한 건과 비교할 수 있습니다. 예를 들어, 얼마나 많은 예약이 요청되었고, 얼마나 많은 탑승 예약이 완료되었거나 취소되었는지 알 수 있습니다.

트리거 

승객이 승차 예약 요청을 한 시기

이벤트 파라미터

이름 설명 예시 값
af_price 탑승 견적 가격 22.4
af_currency 통화 SGD
af_destination_a 출발지 Plaza Singapura
af_destination_b 도착지 Marina Bay Sands
distance 두 목적지 사이의 거리 5.2
af_content_type 운송 유형 Taxi
payment_method_type 결제 수단 유형 신용 카드, 전자 지갑
af_city 탑승을 예약한 시기 Singapore
af_region 탑승을 예약한 지역 SFA
af_country 탑승을 예약한 국가 Singapore
order_id 주문 ID 135790

코드 예

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.PRICE, 22.4);
eventValue.put(AFInAppEventParameterName.CURRENCY, "SGD");
eventValue.put(AFInAppEventParameterName.DESTINATION_A, "Plaza Singapura");
eventValue.put(AFInAppEventParameterName.DESTINATION_B, "Marina Bay Sands");
eventValue.put("distance", 5.2);
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "Taxi");
eventValue.put("payment_method_type", "credit card");
eventValue.put("notes", "Taxi stand");
eventValue.put(AFInAppEventParameterName.CITY, "Singapore");
eventValue.put(AFInAppEventParameterName.REGION, "SFA");
eventValue.put(AFInAppEventParameterName.COUNTRY, "Singapore");
eventValue.put("af_order_id", "135790");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "ride_booking_requested", eventValue);

탑승 예약 확인됨(ride_booking_confirmed)

목적

이 이벤트는 다음을 제공합니다.

  • 가장 활발하게 활동하는 운전자가 누구인지 알 수 있습니다.
  • 운전자 사이에서 공통적인 목적지를 알 수 있습니다.
  • 각 운전자의 평균 및 전체 탑승 요금을 알 수 있습니다.

추가로, 다른 세 가지 예약 관련 이벤트와 함께 이 이벤트를 기록하면 운전자 활동에 대해 더 잘 이해할 수 있습니다. 어느 운전자가 승차 예약 요청을 가장 많이 확인하고, 어느 운전자가 단거리 또는 장거리를 선택하는지 등을 알 수 있습니다.

트리거 

운전자가 예약을 승인한 시기

이벤트 파라미터

이름 설명 예시 값
af_price 탑승 견적 가격 22.4
af_currency 통화 SGD
af_destination_a 출발지 Plaza Singapura
af_destination_b 도착지 Marina Bay Sands
distance 두 목적지 사이의 거리 5.2
af_content_type 운송 유형 Taxi
driver_id 탑승 수행을 확인한 운전자 ID 1706
payment_method_type 결제 수단 유형 신용 카드, 전자 지갑
af_city 탑승을 예약한 시기 Singapore
af_region 탑승을 예약한 지역 SFA
af_country 탑승을 예약한 국가 Singapore
af_order_id 주문 ID 135790

코드 예

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.PRICE, 22.4);
eventValue.put(AFInAppEventParameterName.CURRENCY, "SGD");
eventValue.put(AFInAppEventParameterName.DESTINATION_A, "Plaza Singapura");
eventValue.put(AFInAppEventParameterName.DESTINATION_B, "Marina Bay Sands");
eventValue.put("distance", 5.2);
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "Taxi");
eventValue.put("driver_id", "1706");
eventValue.put("payment_method_type", "credit card");
eventValue.put("notes", "Taxi stand");
eventValue.put(AFInAppEventParameterName.CITY, "Singapore");
eventValue.put(AFInAppEventParameterName.REGION, "SFA");
eventValue.put(AFInAppEventParameterName.COUNTRY, "Singapore");
eventValue.put("af_order_id", "135790");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "ride_booking_confirmed", eventValue);

승차 예약 취소됨(ride_booking_canceled)

목적

이 이벤트는 다음을 제공합니다.

  • 계속 취소하는 운전자나 승객을 기록할 수 있습니다.
  • 얼마나 많은 탑승이 취소되었는지 알 수 있습니다.
  • 요금, 목적지, 거리 및 도시의 속성과 취소율의 상관 관계를 알 수 있습니다.
  • 탑승 취소 이유를 알 수 있습니다.

트리거 

예약이 취소될 때

이벤트 파라미터

이름 설명 예시 값
af_price 탑승 견적 가격 22.4
af_currency 통화 SGD
af_destination_a 출발지 Plaza Singapura
af_destination_b 도착지 Marina Bay Sands
distance 두 목적지 사이의 거리 5.2
af_content_type 운송 유형 Taxi
driver_id 탑승을 확인한 운전자 ID 1706
cancelation_reason 탑승 취소 이유 가격이 너무 비쌉니다, 운전자가 없습니다, 승객이 없습니다.
payment_method_type 결제 수단 유형 신용 카드, 전자 지갑
af_city 탑승을 예약한 시기 Singapore
af_region 탑승을 예약한 지역 SFA
af_country 탑승을 예약한 국가 Singapore
order_id 주문 ID 135790
canceled_by 취소 당사자가 운전자인지 승객인지 여부 Passenger

코드 예

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.PRICE, 22.4);
eventValue.put(AFInAppEventParameterName.CURRENCY, "SGD");
eventValue.put(AFInAppEventParameterName.DESTINATION_A, "Plaza Singapura");
eventValue.put(AFInAppEventParameterName.DESTINATION_B, "Marina Bay Sands");
eventValue.put("distance", 5.2);
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "Taxi");
eventValue.put("driver_id", "1706");
eventValue.put("cancellation_reason", "driver didn't show up");
eventValue.put("payment_method_type", "credit card");
eventValue.put("notes", "Taxi stand");
eventValue.put(AFInAppEventParameterName.CITY, "Singapore");
eventValue.put(AFInAppEventParameterName.REGION, "SFA");
eventValue.put(AFInAppEventParameterName.COUNTRY, "Singapore");
eventValue.put("af_order_id", "135790");
eventValue.put("canceled_by", "passenger");
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "ride_booking_canceled", eventValue);

탑승 예약 완료됨(ride_booking_completed)

목적

이 이벤트는 다음을 제공합니다.

  • 승객의 지출 내역 및 운전자의 수입 내역을 알 수 있습니다.
  • 목적지, 거리, 결제 수단, 운전자 ID 등의 속성과 탑승 완료와의 상관 관계를 알 수 있습니다.
  • 운전자 및 승객의 평균 및 전체 탑승 거리를 알 수 있습니다.
  • 완료된 탑승과 취소된 탑승을 비교할 수 있습니다.
  • 운전자 평가 점수를 기록하고 기록할 수 있습니다.

트리거 

운행이 완료되었을 때

이벤트 파라미터

이름 설명 예시 값
af_price 탑승 견적 가격 22.4
af_currency 통화 SGD
af_destination_a 출발지 Plaza Singapura
af_destination_b 도착지 Marina Bay Sands
distance 두 목적지 사이의 거리 5.2
af_content_type 운송 유형 Taxi
driver_id 탑승 수행을 확인한 운전자 ID 1706
payment_method_type 결제 수단 유형 신용 카드, 전자 지갑
af_city 탑승을 예약한 시기 Singapore
af_region 탑승을 예약한 지역 SFA
af_country 탑승을 예약한 국가 Singapore
order_id 주문 ID 135790
credits_earned 탑승을 완료할 때 승객이 받는 크레딧 248

코드 예

Android iOS - Objective C iOS - Swift Unity
Map<String, Object> eventValue = new HashMap<String, Object>();
eventValue.put(AFInAppEventParameterName.PRICE, 22.4);
eventValue.put(AFInAppEventParameterName.CURRENCY, "SGD");
eventValue.put(AFInAppEventParameterName.DESTINATION_A, "Plaza Singapura");
eventValue.put(AFInAppEventParameterName.DESTINATION_B,"Marina Bay Sands");
eventValue.put("distance", 5.2);
eventValue.put(AFInAppEventParameterName.CONTENT_TYPE, "Taxi");
eventValue.put("driver_id", "1706");
eventValue.put("payment_method_type", "credit card");
eventValue.put("notes", "Taxi stand");
eventValue.put(AFInAppEventParameterName.CITY, "Singapore");
eventValue.put(AFInAppEventParameterName.REGION, "SFA");
eventValue.put(AFInAppEventParameterName.COUNTRY, "Singapore");
eventValue.put("af_order_id", "135790");
eventValue.put("credits_earned", 248);
AppsFlyerLib.getInstance().logEvent(getApplicationContext(), "ride_booking_completed" , eventValue);
도움이 되었습니까?