A Firebase A/B Testing a Firebase platformba épített eszköz kísérletek végzésére mobilalkalmazásokban, amely lehetővé teszi a felület, mechanikák vagy tartalom több verziójának összehasonlítását valós felhasználókon és döntéshozatalt statisztikai adatok alapján. A saját A/B megoldásokkal ellentétben a Firebase A/B Testing integrálódik a Remote Config és Cloud Messaging szolgáltatásokkal, automatikusan csoportokba osztja a felhasználókat és kiszámítja az eredmények szignifikanciáját. A Google Firebase (2026) adatai szerint a szolgáltatás naponta több mint 50 000 aktív kísérletet dolgoz fel, biztosítva az adatvezérelt döntéshozatalt a mobilfejlesztő csapatok számára.
Főbb pontok
Az A/B tesztelés (split-tesztelés) — összehasonlító elemzési módszer, amelyben két felhasználói csoport (kontroll és kísérleti) az alkalmazás egy elemének különböző verzióit látja, majd minden verzió hatását mérik a kiválasztott metrikára. A mobilfejlesztésben az A/B teszteket a UI-változtatásokkal, onboardinggal, monetizációs mechanikákkal, push-értesítésekkel és ajánlási algoritmusokkal kapcsolatos hipotézisek ellenőrzésére használják.
Az A/B tesztelés és az egyszerű megfigyelés közötti kulcskülönbség — az okság (causality). Ha a rendelési képernyő megváltoztatása után a konverzió 15%-kal nőtt, az A/B teszt bizonyítja, hogy pontosan ez a változás okozta a növekedést, nem egy külső tényező (ünnep, reklámkampány, szezonalitás). A/B teszt nélkül nem állítható ok-okozati összefüggés — csak korreláció. Az Optimizely (2025) adatai szerint azok a vállalatok, amelyek rendszeresen végeznek A/B teszteket, évente átlagosan 30%-kal növelik a konverziót.
Egy minőségi A/B teszt elvégzéséhez négy összetevő szükséges: hipotézis (mit változtatunk és miért), metrika (hogyan mérjük a hatást), mintanagyság (hány felhasználó szükséges a megbízható eredményhez) és időtartam (mennyi ideig gyűjtünk adatokat). A Firebase A/B Testing mind a négy összetevőt automatikusan lefedi, de mindegyik megértése szükséges az eredmények helyes értelmezéséhez.
A mobilalkalmazások olyan sajátos jellemzőkkel rendelkeznek, amelyek különösen értékessé teszik az A/B tesztelést. Először is, magas verseny: a Google Play-ben több mint 3 millió alkalmazás található, és minden UI-döntés befolyásolja a retenciót és a konverziót. Másodszor, hosszú kiadási ciklus: a változtatás közzététele az app store-on keresztül 1–7 napig tarthat a felülvizsgálathoz. Az A/B teszt lehetővé teszi a hipotézis ellenőrzését kiadás nélkül (Remote Config segítségével) és a változtatás csak a hatékonyság megerősítése utáni alkalmazását.
A közönség szegmentálása — az A/B tesztek másik előnye. Az új felhasználók számára működő változás káros lehet a régi felhasználók számára. A Firebase A/B Testing lehetővé teszi a közönség szegmentálását alkalmazásverzió, ország, nyelv, regisztráció időtartama és felhasználói tulajdonságok szerint. Ez lehetőséget ad a változtatások tesztelésére egy adott alcsoporton a globális bevezetés előtt.
Feature flag (funkciójelző) — egy funkció egyszerű be- vagy kikapcsolása az összes felhasználó vagy azok egy százaléka számára. Az A/B teszt — strukturált kísérlet metrikák mérésével és statisztikai szignifikancia számításával. A feature flag nem válaszol arra a kérdésre, hogy „befolyásolta-e a változás a metrikákat?", csak a funkció elérhetőségét kezeli. A Firebase A/B Testing a Remote Config-ot használja az értékek szállítási mechanizmusaként, de hozzáad egy analitikai és statisztikai réteget.
A gyakorlatban: ha csak fokozatosan szeretnéd bevezetni egy új funkciót a felhasználók 20%-ának, és megbizonyosodni arról, hogy nem omlik össze — használd a Remote Config-ot random_percent feltétellel. Ha bizonyítani szeretnéd, hogy az új funkció 10%-kal növelte a konverziós arányt — használd a Firebase A/B Testinget, amely automatikusan megméri a metrikákat és megjeleníti a p-értéket.
A Firebase A/B Testing — a Remote Config és Cloud Messaging fölé épített réteg, amely egységes felületet biztosít a kísérletek létrehozásához és nyomon követéséhez. Architekturálisan a szolgáltatás három összetevőből áll: kezelői konzol (A/B Testing szakasz a Firebase Console-ban), elosztási mechanizmus (a megadott százalék alapján csoportokba osztja a felhasználókat) és statisztikai motor (elemzi a metrikák különbségét a csoportok között).
Amikor a kísérlet létrehozója közzéteszi a változtatásokat, a Firebase elmenti a Remote Config sablon új verzióját, de különböző paraméterértékeket alkalmaz a különböző felhasználói csoportokra. A kliensalkalmazás a fetchAndActivate végrehajtásával megkapja a csoportjának megfelelő értéket. A Firebase Analytics összegyűjti az eseményeket az összes csoportból, és továbbítja a statisztikai motornak, amely naponta frissíti a jelentést p-értékkel és megbízhatósági intervallumokkal.
Statisztikai modell A Firebase A/B Testing a frequentista megközelítést használja t-teszttel a metrikák átlagértékeinek összehasonlítására. Bináris metrikák esetén (konverzió, retenció) — kétmintás arányok z-tesztje. Szignifikancia szint (alpha) alapértelmezés szerint — 0.05. A Firebase a Bonferroni-korrekcióval korrigálja a többszörös összehasonlításokat, ha több elsődleges metrika van kiválasztva. Fontos: a statisztikai szignifikancia nem garantál gyakorlati szignifikanciát — még p-érték < 0.05 esetén is lehet az abszolút növekedés gazdaságilag indokolatlan.
A Firebase A/B Testing determinisztikus elosztást használ a felhasználó azonosítója (Analytics App Instance ID) alapján. Ez azt jelenti, hogy ugyanaz a felhasználó mindig ugyanabba a csoportba kerül a kísérlet ismételt futtatásakor, feltéve hogy a kísérlet konfigurációja nem változott. A determinisztikusság fontos a felhasználói élmény konzisztenciája szempontjából: a felhasználónak nem szabad a felület különböző verzióit látnia az alkalmazás minden megnyitásakor.
A százalékos elosztás a kísérlet létrehozásakor kerül beállításra: például 50% kontrollcsoport, 50% kísérleti csoport. A Firebase egyenletesen osztja el a felhasználókat a véletlenszerű seed figyelembevételével, garantálva a kiegyensúlyozott csoportokat méret szerint. Több kísérleti csoport (A/B/n) használata esetén a százalék egyenlően oszlik meg közöttük. Fontos: az elosztási százalék a kísérlet elindítása után nem módosítható — a százalék megváltoztatásához le kell állítani a kísérletet és újat kell létrehozni.
A Remote Config a kísérletben módosított paraméterek értékeinek forrásaként szolgál. Az A/B teszt létrehozásakor kiválasztasz egy Remote Config paramétert, és beállítod az értékét minden csoport számára. A Firebase automatikusan létrehoz egy ideiglenes ágat a Remote Config sablonból a kísérleti értékekkel. Miután a kísérletet az egyik csoport javára leállították, annak értéke a Firebase konzolon keresztül éles értékként alkalmazható.
A Cloud Messaging a kísérlet részét képező push-értesítések küldésére szolgál. A Firebase A/B Testing támogatja különböző szövegekkel, képekkel és időzítéssel rendelkező push-értesítési kísérletek létrehozását. A szolgáltatás automatikusan elosztja az értesítéseket a csoportok között, és méri a metrikákra gyakorolt hatást: open rate, konverzió kattintás után, uninstall rate. Ez lehetővé teszi az optimális kommunikációs mechanikák megtalálását a felhasználókkal a küldemények manuális A/B tesztelése nélkül.
Az A/B teszt létrehozása a Firebase Console-ban az A/B Testing szakaszban történik a „Create experiment" gombon keresztül. A létrehozási varázsló több lépést tartalmaz: a kísérlet típusának kiválasztása (Remote Config vagy Notification), a paraméter és értékeinek megadása a kontroll és tesztcsoport számára, a célközönség meghatározása (attribútumok alapján) és a méréshez használt metrikák kiválasztása. A beállítás befejezése után a kísérlet közzétételre kerül és megkezdi az adatgyűjtést.
A kísérlet típusának kiválasztása: Remote Config experiment — az alkalmazás bármely paraméterének megváltoztatására (UI, tartalom, logika); Notification experiment — különböző push-értesítések hatékonyságának összehasonlítására. A Remote Config kísérletekhez előzetesen létrehozott paraméter szükséges a Remote Config-ban. A Notification kísérletek függetlenül jönnek létre — a Firebase automatikusan előkészíti és elküldi a push-értesítéseket minden csoport számára anélkül, hogy kódot kellene írni a kliens oldalon.
A közönség meghatározása — kritikus fontosságú lépés. Alapértelmezés szerint a kísérlet az alkalmazás összes felhasználóján fut. A közönség szűkítéséhez használj szűrőket: alkalmazásverzió, ország, nyelv, OS-verzió, Analytics felhasználói tulajdonságok. Például az onboarding megváltoztatását csak új felhasználókon (first_open 7 napon belül) érdemes tesztelni. A nem releváns közönségen végzett teszt „elmosódott" eredményt ad, amely elrejti a változtatás valódi hatását.
Minimális időtartam a Firebase A/B Testing kísérletnél — 3 nap (beleértve a teljes hétvégét, mivel a felhasználók viselkedése munkanapokon és hétvégén eltérő). A Firebase automatikusan kiszámítja az ajánlott időtartamot a forgalom és a megadott minimális észlelhető hatás (Minimum Detectable Effect, MDE) alapján. MDE alapértelmezés szerint — a metrika 5%-os relatív változása. Ha az aktuális forgalom nem elegendő az 5%-os hatás észleléséhez 4 héten belül, a Firebase figyelmeztetni fog erre.
A mintanagyság kiszámítása a következők alapján történik: alapmetrika (jelenlegi érték), MDE, szignifikancia szint (alpha = 0.05) és statisztikai erő (power = 0.8). Egy tipikus, 50 000 MAU-val és 10%-os alap konverziós aránnyal rendelkező alkalmazás esetén az 5%-os relatív változás észleléséhez körülbelül 30 000 felhasználóra lesz szükség minden csoportban (összesen 60 000). Ha a mintanagyság nem elegendő, az eredmény nem érheti el a statisztikai szignifikanciát, még akkor sem, ha a változtatás hatékony volt (II. típusú hiba).
A többváltozós kísérletek (A/B/n) lehetővé teszik ugyanazon paraméter 3 vagy több verziójának összehasonlítását. A Firebase egy kísérletben akár 10 variánst is támogat. Minél több a variáns, annál több felhasználó szükséges a statisztikai szignifikancia eléréséhez. Szabály: minden további variáns esetén a mintanagyság 20–30%-kal nő a kétváltozós teszthez képest. Ha a forgalom korlátozott, az egymást követő kétváltozós tesztek előnyösebbek, mint egyetlen többváltozós teszt.
Bonferroni-korrekció — a Firebase automatikusan alkalmazza a többszörös összehasonlítások korrekcióját több variáns vagy metrika esetén. Lényeg: ha 5 hipotézist tesztelsz alpha = 0.05-tel, legalább egy hamis pozitív eredmény valószínűsége 1 — (0.95)^5 ≈ 22.6%. A Bonferroni-korrekció elosztja az alpha-t az összehasonlítások számával: 5 hipotézis esetén alpha = 0.01. Ez konzervatívabbá teszi a hatás észlelését, de csökkenti a false positive kockázatát.
A metrikák kiválasztása — a legfontosabb szakasz, amely meghatározza a kísérlet minőségét. A Firebase A/B Testing több metrikakategóriát kínál: elköteleződés (daily active users, session duration, screens per session), monetizáció (revenue, purchases, subscriptions), retenció (Day 1, Day 7, Day 28), konverzió (conversion rate a kiválasztott esemény alapján). Elérhetők egyéni metrikák is bármely Firebase Analytics esemény alapján.
Elsődleges metrika (primary metric) — az egyetlen metrika, amely alapján a kísérlet sikerességéről döntenek. Az elsődleges metrika kiválasztását a kísérlet megkezdése előtt kell elvégezni a hipotézis alapján. Ha a hipotézis „Az új onboarding növeli a regisztrációs konverziós arányt", akkor az elsődleges metrika — a sign_up_completed esemény conversion rate-je. A másodlagos metrikák (secondary metrics) — kiegészítő mutatók a mellékhatások elemzéséhez: nem csökkent-e a retenció, nem esett-e a revenue.
Az eredmények értelmezése: A Firebase egy táblázatot jelenít meg a metrikák értékeivel minden csoportra, a kontrollcsoporthoz viszonyított százalékos eltéréssel, p-értékkel és 95%-os megbízhatósági intervallummal. Ha a p-érték < 0.05 és a megbízhatósági intervallum nem tartalmazza a 0-t — a különbség statisztikailag szignifikáns. Ha a p-érték > 0.05 — az eredmény nem meggyőző (inconclusive), és a kísérletet meg kell hosszabbítani vagy be kell fejezni mint határozatlant.
A Firebase A/B Testing három cselekvési lehetőséget kínál a kísérlet befejezése után: a nyertes variáns alkalmazása az összes felhasználó számára, a kísérlet folytatása (ha az adatok nem elegendőek) vagy a kísérlet leállítása alkalmazás nélkül (ha minden variáns rosszabb, mint a kontroll, vagy az eredmény határozatlan). A nyertes alkalmazása automatikusan frissíti a Remote Config sablont a nyertes variáns éles értékével.
Figyelem: néha a statisztikailag szignifikáns eredménynek nincs gyakorlati jelentősége. Például a teszt a konverziós arány 0,5%-os növekedését mutatta (p = 0.03), de az UI új verziója 2 hét fejlesztést igényel. A költség-haszon arány indokolatlan lehet. Hozz döntéseket az üzleti hatás alapján, ne csak a statisztikai szignifikancia alapján. A Firebase nemcsak a p-értéket, hanem a metrika abszolút változását is mutatja, ami segít a gyakorlati jelentőség értékelésében.
Retenció — az egyik legfontosabb metrika a mobilalkalmazások számára, mivel közvetlenül kapcsolódik a felhasználó hosszú távú értékéhez (LTV). A Firebase A/B Testing automatikusan kiszámítja a Day 1, Day 7 és Day 28 retenciót minden csoport számára. A megbízható retencióméréshez azonban időre van szükség: a Day 7 retenció a kísérlet kezdete után 7 nappal, a Day 28 retenció pedig 28 nap után értékelhető. Tervezd meg a kísérlet időtartamát a retenciós adatok gyűjtéséhez szükséges idő figyelembevételével.
LTV (Lifetime Value) — összetettebb metrika, amely a Firebase és a Google Analytics for Firebase, valamint szükség esetén egy attribúciós platform (Adjust, AppsFlyer) integrációját igényli. A Firebase A/B Testing lehetővé teszi az LTV metrikaként való használatát, de kiszámításához konfigurálni kell a vásárlási adatok és a felhasználószerzési költségek importját. Attribúció nélkül az LTV pontatlan lehet, mivel a Firebase nem látja a telepítések költségét a hirdetési forrásokból.
A Firebase A/B Testing segítségével történő A/B teszt végzéséhez nincs szükség speciális kódra a kliens oldalon — a teljes kísérlet a Firebase konzolban kerül beállításra. A klienskódnak azonban helyesen kell használnia a Remote Config paramétereket, hogy a kísérlet által hozzárendelt értékek megfelelően kerüljenek alkalmazásra. Vizsgáljunk meg egy példát: az új előfizetési ár A/B tesztje, ahol a kontrollcsoport a régi árat (9,99 $), a kísérleti csoport pedig az új árat (7,99 $) látja.
A Firebase konzolban létrehozzuk a subscription_price Remote Config paramétert „9.99" alapértelmezett értékkel. Ezután létrehozunk egy A/B tesztet, ahol nyertes variánsként a „7.99" értéket adjuk meg a felhasználók 50%-ának. A Firebase automatikusan minden felhasználót egy csoporthoz rendel, és a megfelelő értéket a Remote Config segítségével szállítja. A klienskód a szabványos getString használja az ár lekéréséhez.
A klienskód nem tud a kísérlet létezéséről — egyszerűen megkapja a paraméter értékét a Remote Config-ból. A Firebase SDK a csoportosítást a szerver oldalon kezeli. Ez a Firebase A/B Testing fő előnye: a fejlesztőnek nem kell feltételes logikát írnia a csoportokba osztáshoz. Az egyetlen követelmény — az alkalmazásnak rendszeresen hívnia kell a fetchAndActivate metódust az aktuális értékek lekéréséhez.
class SubscriptionFragment : Fragment() {
private fun loadPrice() {
val remoteConfig = Firebase.remoteConfig
val priceStr = remoteConfig
.getString("subscription_price")
val price = priceStr.toDoubleOrNull() ?: 9.99
priceView.text = "$$price/month"
}
override fun onViewCreated(...) {
super.onViewCreated(...)
loadPrice()
}
}
A példában a loadPrice lekéri a subscription_price paraméter értékét a Remote Config segítségével. A Firebase SDK automatikusan visszaadja az aktív A/B teszt keretében a felhasználó csoportjának megfelelő értéket. Ha a kísérlet nem aktív vagy a felhasználó nem került egy csoportba sem — az alapértelmezett érték kerül visszaadásra. Ez teszi a kódot teljesen függetlenné a kísérletek meglététől vagy hiányától.
A Firebase A/B Testing helyes működéséhez az alkalmazásnak naplóznia kell a kísérlet metrikáiként kiválasztott eseményeket. A Firebase Analytics SDK automatikusan gyűjti a szabványos eseményeket (first_open, session_start, in_app_purchase stb.), de az egyéni metrikákhoz naplózást kell hozzáadni. Az alábbi példában a subscription_started esemény kerül naplózásra, amikor a felhasználó megpróbálja véglegesíteni az előfizetést.
private fun onSubscribeClick() {
// Esemény naplózása az A/B teszthez
val bundle = Bundle().apply {
putString(
FirebaseAnalytics.Param.PRICE,
remoteConfig.getString("subscription_price")
)
}
FirebaseAnalytics.getInstance(requireContext())
.logEvent("subscription_started", bundle)
// Fizetési folyamat elindítása
startBillingFlow()
}
Fontos: a subscription_started eseményt regisztrálni kell a Firebase Analytics-ben egyéni eseményként (a jelentésekhez), vagy szabványos eseménynek kell lennie, amelyet a Firebase A/B Testing használ. A Firebase automatikusan összekapcsolja az eseményt a kísérlet csoportjával az Analytics App Instance ID segítségével. Nincs szükség további jelölésre — minden varázslat a Firebase szerver oldalán történik.
A peek-hatás hibája — a kísérlet leállítása a statisztikai szignifikancia első megjelenésekor a tervezett időtartam figyelembevétele nélkül. Ha naponta ellenőrzöd a p-értéket és megállsz, amint p < 0.05, a hamis pozitív eredmény valószínűsége 5%-ról 30–40%-ra nő. A Firebase A/B Testing rögzített kísérleti időtartamot javasol. Ne nézd az eredményeket a számított határidő lejárta előtt.
Figyelmen kívül hagyott külső tényezők — szezonalitás, reklámkampányok, operációs rendszer frissítések, versenytársak megjelenése. Ha az A/B teszt során egy olyan reklámkampányt indítottál, amely megváltoztatta a forgalom összetételét, a teszt eredménye torzulhat. Javasolt, hogy ne végezz A/B teszteket nagy marketingtevékenységekkel egyidejűleg. Ha ez elkerülhetetlen — győződj meg arról, hogy a hirdetésekből származó forgalom egyenletesen oszlik el a csoportok között.
Szegmentációs hatás (Simpson paradoxona) — olyan helyzet, amikor az általános eredmény a hatás hiányát mutatja, de az egyes szegmenseken belül a hatás létezik és ellentétes. Például a teszt azt mutatta, hogy az új rendelési felület átlagosan nem változtatta meg a konverziót, de iOS-re és Android-ra bontva kiderült: iOS-en a konverzió 20%-kal nőtt, Androidon pedig 15%-kal csökkent. Mindig ellenőrizd az eredményeket kulcsfontosságú szegmensek szerint (platform, ország, alkalmazásverzió).
A többszörös összehasonlítás problémája akkor merül fel, amikor a kísérletben sok metrikát használnak. Ha 20 metrikát ellenőrzöl alpha = 0.05-tel, annak a valószínűsége, hogy legalább egy hamis szignifikáns különbséget (false positive) találsz, 1 — (0.95)^20 ≈ 64%. A Firebase a Bonferroni-korrekciót használja több elsődleges metrika esetén, de a másodlagos metrikák esetén nem. Következtetés: válassz ki egy elsődleges metrikát a kísérlet megkezdése előtt, és ne figyelj a másodlagos metrikák p-értékére a döntéshozatal során.
Az újdonság hatása (Novelty effect) — a felhasználók eltérően reagálhatnak egy új változtatásra pusztán azért, mert az új, nem azért, mert jobb. A kísérlet első napjai hamis növekedést mutathatnak (a felhasználók kíváncsiságból az új gombra kattintanak), ami idővel csökken. A 3 napos minimális kísérleti időtartam részben megoldja ezt a problémát, de UI-változtatások esetén 7–14 napos időtartam ajánlott, hogy az újdonság hatása stabilizálódjon.
Hálózati hatás (network effect) — probléma, amikor az egyik csoportban lévő felhasználó viselkedése befolyásolja a másik csoport felhasználóit. Például a hírfolyam algoritmusának megváltoztatására irányuló A/B teszt: ha a kísérleti csoport jobb ajánlásokat kap, több tartalmat hoz létre, amelyet a kontrollcsoport felhasználói is látnak, torzítva az eredményeket. Ilyen esetekben használj elkülönítést a közösségi gráf alapján, vagy végezd el a tesztet ország/régió szintjén.
Egyidejű kísérletek ugyanazon a Remote Config paraméteren — az interferencia másik forrása. A Firebase A/B Testing nem engedélyezi egy második kísérlet elindítását egy már foglalt paraméteren, de ha a kísérletek különböző paramétereket érintenek, de ugyanazt a metrikát befolyásolják, keresztirányú hatás lehetséges. Javasolt, hogy ne végezz egyszerre 2–3-nál több aktív A/B tesztet, és ügyelj arra, hogy ne befolyásolják ugyanazokat a felhasználói forgatókönyveket.
Gyakran ismételt kérdések
A mintanagyság az alapmetrikától és a minimális észlelhető hatástól függ. 10%-os konverziós arány és 5%-os MDE esetén körülbelül 30 000 felhasználó szükséges csoportonként. A Firebase automatikusan kiszámítja a szükséges méretet a kísérlet létrehozásakor, és figyelmeztet, ha a forgalom nem elegendő a megbízható eredményhez.
Igen, a Firebase A/B Testing támogatja a Notification kísérleteket (push-értesítések), amelyek nem igényelnek Remote Config-ot. Az UI, tartalom vagy alkalmazáslogika megváltoztatásához Remote Config szükséges. A push-értesítések esetén a Firebase maga kezeli azok csoportok szerinti elküldését anélkül, hogy kódot kellene írni a kliens oldalon.
Minimum 3 nap (ajánlott 7–14 nap). A Firebase automatikusan kiszámítja az optimális időtartamot a forgalom és az MDE alapján. Ha az eredmény 4 héten belül nem éri el a szignifikanciát — a kísérlet határozatlannak minősül. Ne állítsd le a kísérletet a számított határidő előtt a peek-hatás miatt.
Ha p-érték > 0.05 a számított határidő után, a lehetséges opciók: hosszabbítsd meg a kísérletet (ha a trend pozitív), fogadd el a nullhipotézist (a változtatás nem befolyásolja a metrikát) vagy vizsgáld felül az MDE-t (talán a hatás túl kicsi ahhoz, hogy gazdaságilag jelentős legyen). Ne alkalmazd a változtatást statisztikai szignifikancia nélkül.
Az A/A teszt — olyan kísérlet, ahol mindkét csoport ugyanazt a paraméterértéket kapja. Az elosztás helyességének és a hamis szignifikancia hiányának validálására szolgál. Ha az A/A teszt p-érték < 0.05-öt mutat — az azt jelenti, hogy az elosztási vagy mérési rendszer hibás. Javasolt A/A tesztet végezni az A/B tesztelés első beállításakor.
Összefoglalás
Kulcsrakész mobilalkalmazást fejlesztünk
Az IT Sectr 2017 óta készít iOS és Android alkalmazásokat induló vállalkozásoknak és vállalkozásoknak. Tanácsot adunk, és a legjobb megoldást javasoljuk.
Olvassa el is