메인 콘텐츠로 바로가기
튜토리얼

__CAPGO_KEEP_0__ 채널을 사용하여 기능 플래그 및 A/B 테스트를 위한 방법

Capgo의 채널을 사용하여 기능 플래그 및 A/B 테스트를 위한 방법을 알아보세요. 사용자 자체 할당 또는 백엔드 사용을 통해

마틴 도나디유

마틴 도나디유

콘텐츠 마케터

채널을 사용하여 기능 플래그 및 A/B 테스트를 위한 기능

채널을 사용하여 기능 플래그 및 A/B 테스트를 위한 기능

Capgo의 채널 시스템은 사용자를 구분하고 기능 접근을 제어하는 유연한 방법을 제공합니다. Capgo에는 내장된 계획 관리 또는 A/B 테스트가 없지만 채널 assignments을 관리하여 이러한 기능을 implement할 수 있습니다.

채널 이해

Capgo의 채널은 다음과 같은 기능을 제공합니다.

  • 특정 사용자 그룹에 다른 기능을 제공
  • A/B 테스트를 위해 사용자를 다른 채널에 assign하는
  • 새로운 기능을 점진적으로 출시
  • 베타 테스트 프로그램을 생성

채널 할당 방법

이 방법은 더 안전합니다. 다음을 포함합니다:

  1. 업데이터에서 장치 ID를 가져옵니다.
  2. 이를 백엔드에 전송합니다.
  3. 백엔드에서는 Capgo API를 호출하여 장치를 채널에 할당합니다.

이 방법을 구현하는 방법은 다음과 같습니다:

import { CapacitorUpdater } from '@capgo/capacitor-updater'

// Get device ID
const getDeviceId = async () => {
  const { deviceId } = await CapacitorUpdater.getDeviceId()
  return deviceId
}

// Send device ID to your backend
const assignToChannel = async (channel: string) => {
  const deviceId = await getDeviceId()
  // Your backend will call Capgo API to assign the device
  await yourBackend.assignDeviceToChannel(deviceId, channel)
}

백엔드 구현

백엔드는 다음을 수행해야 합니다:

  1. API 키를 Capgo 대시보드에서 가져옵니다.
  2. Capgo API를 호출하여 장치를 채널에 할당합니다.

API 키를 가져오는 방법은 다음과 같습니다:

  1. Capgo 로그인 페이지로 이동하세요
  2. 설정 > API 키로 이동하세요
  3. 새 키 생성을 클릭하세요
  4. 선택 all __CAPGO_KEEP_0__ 장치 및 채널 관리를 위해 모드를 선택하세요
  5. 생성된 키를 안전하게 백엔드 환경 변수에 저장하세요
    • 키는 32자리 16진수 문자열로 구성됩니다
    • 클라이언트 측 code에서 노출되지 않도록 비밀 키입니다

Node.js 예제입니다:

import axios from 'axios'

const CAPGO_API_KEY = 'your_api_key'
const CAPGO_API_URL = 'https://api.capgo.app'

async function assignDeviceToChannel(deviceId: string, channel: string) {
  try {
    const response = await axios.post(
      `${CAPGO_API_URL}/device`,
      {
        app_id: 'YOUR_APP_ID',
        device_id: deviceId,
        channel: channel
      },
      {
        headers: {
          'authorization': CAPGO_API_KEY,
          'Content-Type': 'application/json'
        }
      }
    )
    return response.data
  } catch (error) {
    console.error('Failed to assign device to channel:', error)
    throw error
  }
}

백엔드도:

  • 사용자의 권한을 검증하세요
  • 채널 할당 기록을 모두 로깅하세요
  • 속도 제한 처리
  • 할당 실패 시 재시도 로직 구현

2. 자가 할당 (보안이 낮음)

이 메서드는 장치가 직접 채널에 할당할 수 있도록 허용합니다. 테스트에 유용하지만 프로덕션에 사용하는 것은 보안이 낮습니다:

import { CapacitorUpdater } from '@capgo/capacitor-updater'

// Assign device to channel
const assignToChannel = async (channel: string) => {
  await CapacitorUpdater.setChannel(channel)
}

// Get current channel
const getCurrentChannel = async () => {
  const { channel } = await CapacitorUpdater.getChannel()
  return channel
}

사용자가 채널에 자가 할당하려면 Capgo 대시보드에서 이 기능을 활성화해야 합니다:

  1. Capgo 대시보드의 채널 섹션으로 이동
  2. 관리하고 싶은 채널 이름을 클릭
  3. 채널 설정에서 "장치가 자가 연관되도록 허용"을 활성화
  4. 변경 사항 저장

이 설정이 false라면 이 채널을 호출할 때 항상 실패합니다. setChannel 기능 플래그 구현

속도 제한 처리

__CAPGO_KEEP_0__를 사용하여 기능 접근을 제어하십시오:

const isFeatureEnabled = async (feature: string) => {
  // Example: Check if user is in beta channel
  const channel = await getCurrentChannel()
  return channel === 'beta'
}

A/B 테스트 구현

A/B 테스트를 위해 사용자를 다른 채널에 할당하여 실행하십시오:

const assignToABTest = async (userId: string) => {
  // Use consistent hashing to assign users
  const hash = await hashUserId(userId)
  const variant = hash % 2 === 0 ? 'variant-a' : 'variant-b'
  
  await assignToChannel(variant)
  return variant
}

최선의 관행

  1. 백엔드 할당 사용프로덕션에서 항상 백엔드 할당 방법을 사용하십시오
  2. 일관성 있는 할당__CAPGO_KEEP_0__ ID 또는 다른 안정적인 식별자를 사용하여 일관성 있는 채널 할당을 사용하십시오
  3. 모니터링__CAPGO_KEEP_0__ 채널에 대한 기능 사용 및 성능 지표를 추적하십시오
  4. 격차 롤아웃__CAPGO_KEEP_0__ 사용자 세그먼트를 작은 것으로 시작하여 점진적으로 확장하십시오
  5. Clear Documentation__CAPGO_KEEP_0__ 채널 전략과 목적을 문서화하세요

Conclusion

Capgo의 채널 시스템을 활용하여 더 개인화된 앱 경험을 만들고 A/B 테스트를 수행할 수 있습니다. 프로덕션 환경에서는 보다 안전하고 제어할 수 있는 백엔드 할당 방법을 항상 선호하세요.

__CAPGO_KEEP_0__ 채널 관리에 대한 자세한 내용은 __CAPGO_KEEP_0__ 채널 문서를 참조하세요.

__CAPGO_KEEP_0__ 채널을 사용하여 기능 플래그 및 A/B 테스트를 위한 채널 라우팅과 스테이지드 롤아웃을 계획하는 방법

__CAPGO_KEEP_0__를 사용하는 경우 __CAPGO_KEEP_0__ 채널을 사용하여 기능 플래그 및 A/B 테스트를 위한 채널 라우팅과 스테이지드 롤아웃을 계획하는 방법 __CAPGO_KEEP_0__와 연결하세요. __CAPGO_KEEP_0__ 채널 구현에 대한 자세한 내용은 __CAPGO_KEEP_0__ 채널을 참조하세요 채널 채널의 구현 세부 정보에 대해 채널 채널의 구현 세부 정보에 대해 베타 테스트 솔루션 베타 테스트 솔루션의 제품 워크플로에 대해 버전 목표 솔루션 버전 목표 솔루션의 제품 워크플로에 대해

Capacitor 앱에 대한 실시간 업데이트

Capgo을 통해 웹-layer 버그가 생긴 경우, 앱 스토어 승인까지 며칠 기다리지 않고 바로修정해 주세요. 사용자는 배경에서 업데이트를 받으며, 네이티브 변경은 정상적인 검토 경로를 유지합니다.

시작하기

최신 블로그 글

Capgo은 전문적인 모바일 앱을 만들기 위해 필요한 최고의 통찰력을 제공합니다.