원격 구성 소개

원격 구성이란?

📘

원격 구성을 사용하면 배포없이 서비스를 업데이트할 수 있습니다.

2160

서비스/게임을 운영하기 위해서는 지속적인 서비스 개선을 통한 업데이트가 이뤄져야 합니다. 그러나 서비스/게임 업데이트시 개발, 리뷰, 배포, 스토어 업로드 등 여러 과정을 거쳐야 하므로 출시 이후 발견되는 문제들을 실시간으로 대응하는 데에 불편함이 있습니다. 그리고 새로운 버전의 앱을 출시하여도 사용자가 바로 업데이트하지 않으면 변경사항이 반영되지 않아 잘못된 정보가 전달되는 문제가 발생할 수 있습니다. 핵클의 원격 구성을 통해 다양한 설정 값을 배포없이 대시보드 내에서 즉시 수정하고 반영하여 이러한 문제를 해결할 수 있습니다.

📘

Remote Config 사용 조건

SDK 조건

  • 지원 대상: JavaScript, React, React Native, Node.js, Android, iOS, Java/Kotlin, Unity
  • 지원 버전: iOS 및 Android는 2.11.0 이상, Unity 1.4.0 이상, Javascript/React/Node.js는 11.7.3 이상, React Native 3.3.0 이상, Java/Kotlin 2.9.0 이상
  • SDK에서 제공하는 기능과 버전에 대한 보다 자세한 내용은 SDK 문서를 참고 바랍니다.

원격 구성이 필요한 대상

원격 구성은 개발자만을 위한 기능이 아닙니다.

  • 서비스에 문제가 발생하여 고객에게 빠르게 공지사항 문구를 전달하고 싶은 게임 기획/운영, PM/PO
  • 연휴 프로모션 팝업을 개발자 도움없이 관리하고 싶은 마케터
  • 프로모션 이미지를 수정하고 싶은 디자이너
  • 코드 수정과 빌드 없이 다양한 환경을 테스트하고 싶은 시스템 관리자

이 외에도 다양한 직군이 원격 구성을 통해 개발자를 통하지 않고 스스로 간편하게 변경사항을 서비스에 적용할 수 있습니다.

Remote Config 활용 예시

회원 등급별 할인 쿠폰 발급

서비스 내 전체 회원을 대상으로 할인 쿠폰을 발급할 때, 원격 구성을 활용하여 회원 등급별로 할인율을 다르게 지정하여 지급할 수 있습니다. 새로운 파라미터 (discount_coupon) 를 생성하고 사용자 타겟팅을 추가하여 각 회원 등급별(membership_grade)로 노출시키고자 하는 쿠폰의 값을 설정할 수 있습니다. ( SILVER = "10%", GOLD = "20%", VIP = "30%")

핵클 대시보드를 통해 언제든 간편하게 등급별 할인율을 수정할 수 있습니다.

사용자 속성 별 노출

물품 구매 금액 10만원 이상 사용자, 구매 대비 반품 횟수가 많은 사용자와 같이 앱 내에서의 고객의 속성은 다양하게 표현 될 수 있습니다. 원격 구성을 사용하면 앱 내에서 이러한 속성을 가진 고객을 대상으로 보여주고 싶은 광고 배너를 변경하거나 상품의 노출 정렬 기준을 바꾸는 등 유저 속성을 타겟팅하여 앱을 운영하고 테스트 해볼 수 있습니다.

코드별 상태 관리

서비스 내에서 카드 결제 시에 여러 카드사를 제공한다고 해보겠습니다. 이때 카드사별 사정, 점검 등으로 유저에게 결제가 가능하지 않다는 문구를 보여줘야 할 때가 있습니다. 이때 카드사 목록 및 결제 가능 여부를 JSON 파라미터 형태로 원격 구성을 활용하여 관리를 하게 되면 변경이 발생할 때마다 별도의 배포 없이 원격 구성을 업데이트를 하여 서비스에 즉각 반영할 수 있습니다. 또한 추가적으로 은행사 노출 순서를 조정할 수도 있고 유저 속성별로 노출되는 정보를 다르게 할 수도 있습니다.

{
  "payTypes": [
    { "bankCode": 001, "bankName": "aaa은행", "isAvailable": true },
    { "bankCode": 005, "bankName": "bbb은행", "isAvailable": false },
    { "bankCode": 010, "bankName": "ccc은행", "isAvailable": true }
    .....
  ]
}

SDK 설정 방법

SDK를 설정하는 방법은 다음 문서를 참고하시기 바랍니다.
Java/Kotlin
Android
iOS
JavaScript
React
React Native
Node.js
Unity