Lompat ke konten utama
Tutorial

Cara Menggunakan Saluran untuk Flag Fitur dan Uji Coba A/B

Pelajari cara menggunakan saluran Capgo untuk flag fitur dan uji coba A/B dengan mengasignasi pengguna sendiri atau menggunakan backend Anda

Martin Donadieu

Martin Donadieu

Pengembang Konten

Bagaimana Menggunakan Saluran untuk Flag Fitur dan Uji Coba A/B

Bagaimana Menggunakan Saluran untuk Flag Fitur dan Uji Coba A/B

Capgo's sistem saluran menyediakan cara yang fleksibel untuk membagi pengguna dan mengontrol akses fitur. Meskipun Capgo tidak memiliki manajemen rencana bawaan atau uji coba A/B, Anda dapat menerapkan fitur-fitur ini dengan mengelola penugasan saluran sendiri.

Pengertian Saluran

Saluran di Capgo memungkinkan Anda:

  • Mengarahkan kelompok pengguna tertentu dengan fitur yang berbeda
  • Menggunakan uji coba A/B dengan mengalokasikan pengguna ke saluran yang berbeda
  • Menggelar fitur-fitur baru secara bertahap
  • Membuat program uji coba beta

Metode Pengaturan Saluran

Ini adalah metode yang lebih aman. Ini melibatkan:

  1. Mendapatkan ID perangkat dari pembarui
  2. Mengirimkannya ke backend Anda
  3. Backend Anda memanggil Capgo API untuk mengasosiasikan perangkat

Ini adalah cara untuk melaksanakannya:

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)
}

Pengimplementasian Backend

Backend Anda perlu:

  1. Mendapatkan kunci API dari dashboard Capgo
  2. Menghubungi Capgo API untuk mengasosiasikan perangkat ke saluran

Untuk mendapatkan kunci API Anda:

  1. Masuk ke dashboard Anda Capgo
  2. Pergi ke Pengaturan > API Kunci
  3. Klik “Generate New Key”
  4. Pilih all mode untuk mengelola perangkat dan saluran
  5. Salin kunci yang dihasilkan dan simpan dengan aman di variabel lingkungan backend Anda
    • Kunci akan berupa string hexadecimal 32 karakter
    • Itu adalah kunci rahasia yang tidak boleh terungkap di sisi klien code

Contoh Node.js di bawah ini:

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
  }
}

Server backend juga harus:

  • Mengvalidasi izin pengguna
  • Merekam semua pengaturan saluran
  • Atur batasan kecepatan
  • Implementasikan logika ulang untuk tugas yang gagal

2. Penugasan Otomatis (Lebih Tidak Aman)

Metode ini memungkinkan perangkat untuk secara langsung menugaskan diri mereka ke sebuah saluran. Ini berguna untuk pengujian tetapi kurang aman untuk produksi:

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
}

Sebelum pengguna dapat menugaskan diri mereka ke sebuah saluran, Anda perlu mengaktifkan fitur ini di Capgo dashboard:

  1. Buka bagian Saluran di Capgo dashboard Anda
  2. Klik pada nama saluran yang ingin Anda kelola
  3. Dalam pengaturan saluran, aktifkan “Izinkan perangkat untuk berhubungan secara otomatis”
  4. Simpan perubahan

Jika pengaturan ini palsu, setiap upaya untuk memanggil setChannel dengan saluran ini akan gagal.

Mengimplementasikan Flag Fitur

Pilih saluran untuk mengontrol akses fitur:

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

Penerapan Uji Coba A/B

Lakukan uji coba A/B dengan mengalokasikan pengguna ke saluran yang berbeda:

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
}

Praktik Terbaik

  1. Pilih Pengalokasian Backend: Untuk produksi, selalu gunakan metode pengalokasian backend
  2. Pengalokasian Konsisten: Gunakan ID pengguna atau identifikasi stabil lainnya untuk pengalokasian saluran yang konsisten
  3. Pengawasan: Ikuti penggunaan fitur dan metrik kinerja untuk setiap saluran
  4. Pengembangan Berkelanjutan: Mulai dengan segmen pengguna kecil dan secara bertahap memperluas
  5. Dokumentasi Jelas: Dokumentasikan strategi dan tujuan saluran Anda

Kesimpulan

Dengan menggunakan sistem saluran Capgo Anda dapat membuat pengalaman aplikasi yang lebih personal dan menjalankan uji coba A/B. Untuk penggunaan produksi, selalu prefer metode pengasasan backend untuk keamanan dan kontrol yang lebih baik.

Untuk informasi lebih lanjut tentang pengelolaan saluran, silakan cek dokumentasi channels.

Teruskan dari Cara Menggunakan Saluran untuk Flag Fitur dan Uji Coba A/B

Jika Anda menggunakan Cara Menggunakan Saluran untuk Flag Fitur dan Uji Coba A/B untuk merencanakan routing saluran dan peluncuran yang terstaged, hubungkannya dengan Saluran untuk detail implementasi di Saluran, Saluran untuk detail implementasi di Saluran, Saluran untuk detail implementasi di Saluran, Solusi Uji Beta untuk alur kerja produk di Solusi Uji Beta, dan Solusi Target Versi untuk alur kerja produk di Solusi Target Versi.

Live updates untuk Capacitor aplikasi

Ketika bug layer web masih aktif, kirimkan perbaikan melalui Capgo daripada menunggu hari-hari untuk persetujuan toko aplikasi. Pengguna mendapatkan update di latar belakang sementara perubahan native tetap dalam jalur review normal.

Mulai Sekarang

Terbaru dari Blog Kami

Capgo memberikan Anda wawasan terbaik yang Anda butuhkan untuk membuat aplikasi mobile profesional yang sebenarnya.