Firebase Remote Config: apa itu, parameter dan cara mengelola dari jarak jauh

Penulis: IT Sectr Diterbitkan: 2026-04-28 Waktu membaca: 15 mnt

Firebase Remote Config adalah layanan cloud untuk mengelola parameter aplikasi seluler, yang memungkinkan Anda mengubah perilaku, tampilan, dan kontennya tanpa menerbitkan versi baru di toko aplikasi. Berbeda dengan pendekatan tradisional dengan siklus rilis, Remote Config memungkinkan Anda mengubah parameter yang dapat dikonfigurasi secara real-time melalui konsol Firebase atau REST API. Menurut data Google Firebase (2026), layanan ini digunakan di 65% aplikasi di platform Firebase untuk pengujian A/B, personalisasi, dan manajemen operasional fitur di sisi klien.

Poin Utama

  • Remote Config — layanan manajemen parameter aplikasi jarak jauh melalui konsol cloud Firebase.
  • Perubahan berlaku tanpa memperbarui aplikasi di toko — cukup restart atau sinkronisasi interval.
  • Personalisasi memungkinkan Anda menetapkan nilai parameter yang berbeda untuk grup pengguna atau kondisi yang berbeda.
  • Pengujian A/B terintegrasi dalam Remote Config: Anda dapat membandingkan perilaku grup dengan nilai parameter yang berbeda.
  • Caching di sisi klien mengurangi beban server: data disimpan secara lokal hingga 12 jam secara default.

Apa itu Firebase Remote Config dan bagaimana cara kerjanya

Firebase Remote Config adalah layanan yang menyimpan pasangan kunci-nilai di sisi server Firebase dan mengirimkannya ke perangkat klien berdasarkan permintaan atau sesuai jadwal. Setiap parameter memiliki nama (string), nilai (string, angka, boolean, atau JSON) dan dapat dikaitkan dengan kondisi — aturan yang menentukan nilai apa yang diterima pengguna tertentu. Kondisi dapat memeriksa versi aplikasi, bahasa perangkat, wilayah, persentase acak, dan banyak atribut lainnya.

Arsitektur Remote Config dibangun di atas model push-pull dengan prioritas pull. Klien secara periodik meminta nilai terbaru dari server (secara default setiap 12 jam). Namun, pengembang dapat memulai sinkronisasi segera dalam kode atau melalui konsol Firebase (tombol “Publish changes”). Setelah perubahan dipublikasikan, server mengirimkan notifikasi push melalui Firebase Cloud Messaging, dan aplikasi setelah menerimanya dapat meminta parameter lagi.

Paket gratis Firebase Remote Config tidak memiliki batasan jumlah parameter atau permintaan, yang membedakannya dari layanan Firebase lainnya. Satu-satunya batasan adalah ukuran respons yang tidak boleh melebihi 800 KB (total untuk semua parameter). Ini lebih dari cukup untuk skenario tipikal: sebagian besar proyek menggunakan 10–50 parameter, dan volume totalnya jarang melebihi 100 KB.

Bagaimana Remote Config menentukan nilai apa yang akan dikembalikan ke pengguna

Mekanisme pemilihan nilai didasarkan pada prioritas kondisi. Setiap kondisi mewakili aturan (misalnya, “iOS versi > 15.0”). Remote Config memeriksa kondisi dalam urutan prioritas dan mengembalikan nilai dari kondisi pertama yang cocok. Jika tidak ada kondisi yang cocok, nilai default (default value) digunakan. Mekanisme ini memungkinkan pembuatan hierarki aturan: dari yang paling spesifik ke yang paling umum.

Penting: urutan kondisi di konsol Firebase sangat berarti. Jika dua kondisi dapat cocok untuk satu pengguna secara bersamaan, kondisi yang lebih tinggi dalam daftar akan menang. Disarankan untuk menempatkan kondisi yang lebih spesifik (misalnya, untuk versi aplikasi tertentu) di atas kondisi umum (misalnya, “Semua pengguna iOS”). Urutan yang salah dapat menyebabkan perubahan yang ditargetkan tidak pernah diterapkan.

Caching dan masa pakai parameter

Secara default Remote Config menyimpan cache nilai yang diterima dari server selama 12 jam. Ini berarti setelah perubahan dipublikasikan di konsol, aplikasi akan melihatnya tidak lebih awal dari 12 jam kemudian (atau setelah panggilan fetch eksplisit berikutnya). Waktu cache minimum dapat diatur melalui FirebaseRemoteConfigSettings(minimumFetchIntervalInSeconds: 3600) — untuk produksi disarankan setidaknya 1 jam untuk menghindari permintaan berlebihan ke server dan konsumsi lalu lintas pengguna.

Untuk menguji perubahan selama pengembangan, gunakan interval minimum 0 detik: FirebaseRemoteConfigSettings(minimumFetchIntervalInSeconds: 0). Dalam mode ini, setiap panggilan fetch akan memuat nilai terbaru dari server. Penting untuk tidak lupa mengembalikan interval produksi sebelum rilis, jika tidak, setiap kali aplikasi dijalankan, aplikasi akan terhubung ke server, meningkatkan biaya dan konsumsi baterai.

Parameter, kondisi, dan grup pengguna

Parameter Remote Config adalah variabel bernama yang dapat mengambil salah satu dari beberapa nilai tergantung pada kondisi. Jenis nilai: string, number (double), boolean, JSON object (string yang diserialisasi). Parameter JSON berguna untuk mentransfer data terstruktur tanpa membuat banyak parameter terpisah: misalnya, objek dengan pengaturan tema aplikasi (primaryColor, backgroundColor, fontSize).

Kondisi (conditions) adalah aturan logis yang memeriksa atribut pengguna atau perangkat: versi OS (iOS, Android), versi aplikasi, negara, bahasa, audiens pengguna (properti yang ditentukan dalam kode), persentase acak (untuk pengujian A/B). Kondisi dapat digabungkan melalui AND logis: misalnya, “versi aplikasi >= 5.0” DAN “negara = Rusia”. Setiap parameter dapat memiliki jumlah kondisi yang tidak terbatas, tetapi dalam praktiknya 2–5 digunakan.

Untuk personalisasi gunakan properti pengguna (user properties) — atribut yang ditetapkan dalam kode aplikasi melalui Firebase Analytics. Misalnya, analytics.setUserProperty(“subscription_tier”, “premium”). Remote Config dapat memeriksa properti ini dan mengembalikan nilai yang spesifik untuk pengguna premium. Personalisasi melalui Remote Config tidak memerlukan pembuatan kondisi di sisi klien — seluruh logika terpusat di konsol cloud.

Jenis kondisiContohSkenario
Versi OSiOS >= 16.0Aktifkan fitur baru hanya untuk versi iOS baru
Versi aplikasiapp_version >= 3.2Tampilkan banner pembaruan untuk versi lama
Negaracountry == “JP”Lokalisasi konten untuk Jepang
Persentase acak10% penggunaUji A/B untuk 10% audiens
User Propertytier == “premium”Aktifkan fitur premium

Grup pengguna dan segmentasi

Remote Config mendukung dua model segmentasi: berdasarkan atribut (conditions) dan berdasarkan properti Firebase Analytics (user properties). Model pertama bersifat statis: kondisi memeriksa atribut tetap yang tidak berubah dalam sesi atau versi aplikasi. Model kedua bersifat dinamis: properti dapat ditetapkan kapan saja selama aplikasi berjalan, memungkinkan segmentasi pengguna yang fleksibel saat runtime.

Penting: untuk menggunakan user properties di Remote Config, integrasi Firebase Analytics diperlukan. Persyaratan ini disebabkan oleh fakta bahwa Remote Config menerima data pengguna dari SDK Analytics. Tanpa Analytics, Remote Config hanya bekerja dengan atribut perangkat (versi OS, versi aplikasi, negara dari IP). Personalisasi berdasarkan perilaku pengguna (misalnya, “telah melakukan 5 pembelian”) hanya tersedia melalui Analytics.

Versioning Template

Template Remote Config (template) adalah kumpulan lengkap semua parameter, kondisi, dan nilainya. Firebase menyimpan riwayat perubahan template dan memungkinkan kembali ke versi sebelumnya dalam waktu 90 hari. Versioning sangat penting: jika setelah perubahan dipublikasikan ditemukan kesalahan (misalnya, nilai parameter yang salah merusak UI), template dapat segera dikembalikan ke versi kerja sebelumnya melalui konsol Firebase.

Setiap perubahan template (publikasi) membuat versi baru dengan nomor unik. Di konsol Firebase tersedia log perubahan dengan mencantumkan waktu, pengguna, dan deskripsi (jika diisi). Disarankan untuk selalu menambahkan deskripsi pada publikasi: “Mengaktifkan feed baru untuk iOS 10% grup pengujian”. Tanpa deskripsi, setelah sebulan tidak mungkin mengingat apa yang sebenarnya diubah di versi 42.

Cara mengimplementasikan Remote Config di aplikasi

Implementasi Remote Config terdiri dari tiga langkah: inisialisasi SDK dengan pengaturan (waktu cache), menentukan parameter default (nilai jika server tidak tersedia), dan logika penerapan nilai yang diterima. Parameter default adalah jaring pengaman jika perangkat tidak dapat terhubung ke Firebase (tidak ada internet, server tidak tersedia). Tanpa default values, aplikasi akan menggunakan null, yang dapat menyebabkan crash.

Penentuan default values dilakukan dengan dua cara: secara programatis melalui panggilan setDefaultsAsync atau melalui file XML. Cara programatis nyaman untuk proyek kecil: semua nilai ditetapkan langsung dalam kode sekali saat aplikasi dimulai. Cara file lebih disukai untuk proyek dengan puluhan parameter: nilai disimpan dalam sumber daya dan mudah diedit tanpa kompilasi ulang. Disarankan untuk menggabungkan: pengaturan dasar di XML, dan yang spesifik secara programatis.

Asinkronisitas adalah fitur utama Remote Config SDK. Metode fetchAndActivate() melakukan permintaan ke server di latar belakang, tanpa memblokir UI. Setelah pemuatan selesai, aktivasi terjadi — nilai parameter diperbarui di memori aplikasi. Untuk melacak penyelesaian, gunakan listener atau coroutine (di Android/Kotlin). Pengguna tidak boleh melihat “lompatan” UI saat parameter diperbarui — semua perubahan harus diterapkan dengan mulus.

Inisialisasi dengan onComplete dan listener

Pada peluncuran pertama, Remote Config SDK tidak memblokir inisialisasi aplikasi. Selama sinkronisasi, aplikasi menggunakan nilai default. Ini berarti pengguna mungkin melihat versi lama antarmuka pada peluncuran pertama, dan setelah fetch selesai — yang baru. Untuk parameter kritis (misalnya, serverUrl yang menjadi sandaran fungsionalitas), gunakan aktivasi sinkron dengan menunggu hasil.

Praktik yang disarankan: tampilkan layar pemuatan dengan penundaan minimal, jika aplikasi sangat perlu mendapatkan parameter terbaru sebelum menampilkan layar pertama. Di layar pemuatan, fetchAndActivate dijalankan dengan batas waktu 5 detik. Jika dalam 5 detik parameter tidak dimuat, aplikasi mulai dengan default values. Ini mencegah penantian tak terbatas saat tidak ada internet.

Bekerja dengan parameter JSON

Parameter JSON Remote Config memungkinkan mentransfer data terstruktur dengan satu nilai. Misalnya, objek dengan gaya tema: {“primaryColor”: “#6200EE”, “borderRadius”: 8, “fontFamily”: “Roboto”}. Di sisi klien, JSON diurai dan diterapkan ke UI. Keuntungan: satu parameter daripada tiga, atomisitas pembaruan (ketiga bidang diperbarui secara bersamaan), konsol yang bersih. Kekurangan: kesulitan membaca di konsol Firebase (JSON ditampilkan sebagai string).

Rekomendasi: gunakan parameter JSON untuk grup nilai yang terkait secara logis yang diperbarui bersama (tema, konfigurasi layar, pengaturan jaringan). Untuk parameter independen (feature toggle, serverUrl) gunakan parameter string atau boolean terpisah — lebih mudah dibaca di konsol dan lebih mudah melacak perubahan di riwayat versi template.

Pengujian A/B dengan Remote Config

Pengujian A/B adalah fitur bawaan Firebase Remote Config yang memungkinkan Anda membagi pengguna ke dalam grup, menetapkan nilai parameter yang berbeda untuk setiap grup, dan mengukur dampak perubahan pada metrik yang dipilih. Berbeda dengan pembagian manual melalui kondisi dengan random_percent, integrasi dengan Firebase Analytics secara otomatis mengumpulkan statistik untuk setiap grup eksperimental dan menunjukkan signifikansi statistik dari perbedaan.

Proses pengujian A/B: pengembang membuat eksperimen di konsol Firebase (bagian A/B Testing), memilih parameter Remote Config, menetapkan nilai untuk grup kontrol dan pengujian, dan menentukan metrik target (misalnya, conversion rate atau revenue). Firebase secara otomatis mendistribusikan pengguna ke dalam grup, mengumpulkan data, dan setelah 2–4 minggu menunjukkan hasil dengan p-value. Eksperimen dapat dihentikan lebih awal jika hasilnya jelas.

Signifikansi statistik adalah kriteria utama untuk menghentikan eksperimen. Firebase A/B Testing menggunakan pendekatan Frequentist dan menunjukkan p-value untuk setiap metrik. Ambang signifikansi standar adalah 0,05 (probabilitas kepercayaan 95%). Ketika ambang ini tercapai untuk salah satu grup, Firebase merekomendasikan menghentikan eksperimen dan menerapkan perubahan untuk semua pengguna. Jika setelah 4 minggu signifikansi tidak tercapai, eksperimen dianggap tidak meyakinkan.

Jenis eksperimen

Firebase A/B Testing mendukung dua jenis eksperimen: A/B klasik (perbandingan dua nilai dari satu parameter) dan A/B/n multivariat (perbandingan tiga atau lebih nilai). Untuk pengujian multivariat, diperlukan lebih banyak pengguna untuk mencapai signifikansi statistik. Disarankan menggunakan A/B/n hanya untuk parameter dengan 3–5 varian, di mana setiap varian berbeda secara fundamental dari yang lain.

Durasi eksperimen tergantung pada volume lalu lintas: untuk aplikasi dengan 1000 pengguna aktif per hari, durasi minimum adalah 2 minggu, untuk aplikasi dengan 100.000 pengguna — 3–5 hari. Firebase secara otomatis menghitung waktu yang diperlukan dan memperingatkan jika lalu lintas saat ini tidak cukup untuk mendeteksi perbedaan yang signifikan. Penting: jangan hentikan eksperimen sebelum perkiraan waktu, bahkan jika hasilnya tampak jelas — ini adalah kesalahan klasik “peeking”.

Metrik untuk pengujian A/B

Metrik target di Firebase A/B Testing ditentukan berdasarkan peristiwa Firebase Analytics. Metrik standar tersedia: daily active users, revenue, conversion rate, retention, user engagement. Metrik khusus juga dapat dibuat berdasarkan peristiwa Analytics apa pun dengan parameter tambahan. Misalnya, metrik “Persentase pengguna yang mencapai layar pembayaran” dibuat dari peristiwa screen_view dengan parameter screen_name = “payment”.

Disarankan untuk memilih satu metrik primer (primary metric) yang menjadi dasar keputusan tentang keberhasilan eksperimen, dan 2–3 metrik sekunder untuk analisis tambahan. Memilih beberapa metrik primer meningkatkan risiko hasil positif palsu (multiple comparison problem). Jika metrik primer yang dipilih tidak menunjukkan peningkatan yang signifikan secara statistik, eksperimen dianggap tidak berhasil, bahkan jika metrik sekunder membaik.

Contoh kode untuk Remote Config di Kotlin

Kita akan membahas integrasi Remote Config di aplikasi Android dengan Kotlin. Contoh termasuk inisialisasi SDK dengan waktu kustom caching, mendapatkan parameter dari berbagai jenis, implementasi kondisi A/B di sisi klien, dan penanganan kesalahan saat server tidak tersedia. Semua kode dijalankan di main activity atau kelas Application, sehingga parameter tersedia sejak awal aplikasi.

Sebelum digunakan, tambahkan dependensi: implementation(“com.google.firebase:firebase-config”) melalui Firebase BOM. Pastikan Firebase Analytics juga terhubung, karena Remote Config menggunakan Analytics untuk mentransfer properti pengguna.

Inisialisasi dan mendapatkan parameter

Contoh pertama — konfigurasi dasar Remote Config dengan interval fetch minimum 1 jam untuk produksi. SDK diinisialisasi dalam metode onCreate kelas Application. Setelah fetchAndActivate, nilai parameter welcome_message diperiksa, yang dapat diubah dari jarak jauh untuk layar selamat datang.

kotlin
class MainApp : Application() {

    override fun onCreate() {
        super.onCreate()
        val remoteConfig = Firebase.remoteConfig
        val settings = FirebaseRemoteConfigSettings.Builder()
            .setMinimumFetchIntervalInSeconds(3600)
            .build()

        remoteConfig.setConfigSettingsAsync(settings)
        remoteConfig.setDefaultsAsync(
            R.xml.remote_config_defaults
        )

        remoteConfig.fetchAndActivate()
            .addOnCompleteListener { task ->
                if (task.isSuccessful) {
                    val welcomeMsg = remoteConfig
                        .getString("welcome_message")
                    Log.d("RemoteConfig", welcomeMsg)
                }
            }
    }
}

Dalam contoh, setDefaultsAsync memuat default values dari file XML res/xml/remote_config_defaults.xml. Jika fetch berakhir dengan kesalahan (tidak ada jaringan, server tidak tersedia), aplikasi akan menggunakan nilai-nilai ini. File XML berisi nama parameter yang sama seperti di konsol Firebase: <entry key=“welcome_message”>Selamat datang!</entry>. Disarankan untuk selalu memiliki default values untuk semua parameter Remote Config.

Feature toggle dengan Remote Config

Contoh kedua — feature toggle (bendera aktivasi fitur). Parameter new_checkout_enabled memiliki tipe boolean. Jika nilainya true — aplikasi menampilkan layar checkout baru, jika false — yang lama. Feature toggle adalah skenario Remote Config yang paling populer: perubahan hanya mempengaruhi satu parameter, tidak memerlukan modifikasi logika, dan dapat segera dibatalkan.

kotlin
fun isFeatureEnabled(paramName: String): Boolean {
    return Firebase.remoteConfig
        .getBoolean(paramName)
}

// Penggunaan di activity
if (isFeatureEnabled("new_checkout_enabled")) {
    navigateToNewCheckout()
} else {
    navigateToLegacyCheckout()
}

Fungsi isFeatureEnabled merangkum akses ke Remote Config dan dapat dengan mudah diuji melalui mock. Untuk feature toggles, disarankan menggunakan konvensi penamaan: prefiks feature_, ff_ atau flag_, sehingga di konsol Firebase langsung jelas tujuan parameter. Contoh: feature_new_onboarding, ff_dark_mode, flag_v3_api. Jangan gunakan parameter bendera untuk mengaktifkan/menonaktifkan lebih dari 3 bulan — akumulasi bendera mati mempersulit pemeliharaan.

Mendapatkan konfigurasi tema JSON

Contoh ketiga — mendapatkan parameter JSON dengan pengaturan tema aplikasi. Parameter app_theme berisi objek JSON dengan primaryColor, borderRadius, dan fontFamily. Di sisi klien, JSON diurai menggunakan Gson atau kotlinx.serialization, dan nilai diterapkan ke UI. Pendekatan ini memungkinkan desainer mengubah tema aplikasi tanpa partisipasi pengembang dan tanpa rilis.

kotlin
data class AppTheme(
    val primaryColor: String = "#6200EE",
    val borderRadius: Int = 8,
    val fontFamily: String = "Roboto"
)

fun getAppTheme(): AppTheme {
    val json = Firebase.remoteConfig
        .getString("app_theme")
    return Gson().fromJson(json, AppTheme::class.java)
}

Bekerja dengan JSON memerlukan kehati-hatian: jika JSON di konsol Firebase tidak valid (misalnya, koma terlewat), penguraian akan gagal dan aplikasi akan menerima default values, bukan tema saat ini. Disarankan untuk memvalidasi string JSON sebelum publikasi melalui validator JSON. Untuk produksi, tambahkan try-catch saat mengurai dan catat kesalahan melalui Firebase Crashlytics.

Praktik terbaik dan batasan

Firebase Remote Config adalah alat yang kuat, tetapi jika digunakan secara tidak benar dapat menyebabkan masalah kinerja, prediktabilitas perilaku, dan keamanan. Mari kita bahas praktik utama yang akan membantu menghindari kesalahan umum saat bekerja dengan layanan ini dan batasan yang perlu dipertimbangkan saat merancang arsitektur aplikasi.

Hindari data sensitif — Remote Config tidak dirancang untuk menyimpan rahasia (kunci API, token, kata sandi). Semua nilai parameter dapat diakses oleh kode klien dan dapat diekstrak dari memori aplikasi. Untuk data rahasia, gunakan Cloud Functions dengan verifikasi server atau Secret Manager. Di Remote Config, simpan hanya parameter publik: teks, bendera, pengaturan UI, URL endpoint publik.

Uji setiap perubahan sebelum dipublikasikan ke seluruh audiens. Gunakan pengujian A/B atau publikasi ke persentase kecil (1–5% pengguna) untuk memeriksa bahwa nilai baru tidak menyebabkan crash dan tidak merusak tampilan. Remote Config tidak memiliki lingkungan staging — semua perubahan dipublikasikan langsung ke produksi. Satu-satunya cara publikasi yang aman adalah peluncuran bertahap.

Batasan platform: jumlah maksimum parameter — 2000 (untuk semua jenis), ukuran maksimum satu nilai — 256 KB, ukuran total respons server — 800 KB. Jumlah properti pengguna (user properties) yang dapat digunakan di Remote Config dibatasi hingga 25. Interval fetch minimum — 0 detik (untuk debugging), tetapi penyalahgunaan dapat menyebabkan melebihi kuota Cloud Functions (30.000 permintaan per menit per proyek).

Pertanyaan yang Sering Diajukan

Bisakah Remote Config bekerja tanpa internet?

Ya, saat tidak ada jaringan, Remote Config menggunakan nilai default yang ditetapkan dalam kode atau file XML. Setelah koneksi pulih, SDK akan secara otomatis melakukan fetch pada panggilan berikutnya atau setelah interval cache berakhir. Aplikasi tidak akan pernah crash karena tidak adanya Remote Config jika default values ditetapkan dengan benar.

Seberapa cepat perubahan sampai ke pengguna?

Secara default — hingga 12 jam (interval cache). Untuk mempercepat, gunakan notifikasi push FCM melalui tombol “Publish changes” di konsol: aplikasi menerima pesan dan segera melakukan fetch. Interval fetch minimum untuk percepatan dapat diatur melalui minimumFetchIntervalInSeconds.

Berapa banyak parameter yang dapat dibuat secara gratis?

Gratis — hingga 2000 parameter per proyek, jumlah permintaan tidak terbatas pada paket Spark. Batas 2000 parameter bersifat lunak: Firebase tidak memblokir pembuatan parameter baru, tetapi kinerja mungkin menurun. Untuk proyek dengan ribuan parameter, disarankan menggunakan parameter JSON terstruktur.

Bisakah Remote Config digunakan di Flutter?

Ya, Firebase Remote Config memiliki plugin Flutter resmi: firebase_remote_config. API sepenuhnya sesuai dengan SDK native Android dan iOS. Plugin mendukung semua jenis parameter, fetchAndActivate, listener perubahan, dan integrasi dengan Firebase Analytics untuk pengujian A/B.

Apa perbedaan Remote Config dengan Firebase Feature Flags?

Firebase Feature Flags adalah layanan terpisah untuk manajemen fitur dengan dukungan untuk audiens target dan eksperimen. Remote Config adalah layanan yang lebih umum untuk parameter apa pun, termasuk feature toggles. Feature Flags menyediakan UI khusus dan integrasi dengan Cloud Run, tetapi Remote Config tetap menjadi alat utama untuk sebagian besar skenario.

Ringkasan

  • Firebase Remote Config — layanan cloud untuk mengelola parameter aplikasi tanpa menerbitkan pembaruan.
  • Mekanisme kerja — model pull dengan caching hingga 12 jam dan kemungkinan push melalui FCM.
  • Kondisi memungkinkan menetapkan nilai berbeda untuk grup pengguna yang berbeda berdasarkan atribut perangkat.
  • Pengujian A/B terintegrasi dalam Remote Config dan terintegrasi dengan Firebase Analytics untuk menghitung signifikansi statistik.
  • Keamanan — Remote Config tidak dirancang untuk menyimpan rahasia, hanya untuk parameter publik.
  • Feature toggles — skenario paling populer: mengaktifkan/menonaktifkan fitur melalui satu parameter boolean.
  • Best practice — publikasikan perubahan ke 1–5% audiens sebelum diluncurkan ke semua pengguna.

Kami akan mengembangkan aplikasi seluler turnkey

IT Sectr membuat aplikasi iOS dan Android untuk startup dan bisnis sejak 2017. Kami akan memberi saran dan mengusulkan solusi terbaik.

Diskusikan proyek

Baca juga