Jak publikovat aplikaci na Google Play: kontrolní seznam
Pro publikaci aplikace na Google Play potřebujete vývojářský účet Google, podepsaný balíček aplikace, otestovanou aplikaci a zásady ochrany osobních údajů.
Shrnutí a kontext
Aplikaci na Google Play publikujete v Google Play Console. Založíte si vývojářský účet, nahrajete podepsaný balíček Android App Bundle (.aab), vyplníte záznam v obchodě, několik dotazníků o vaší aplikaci a vydání předáte ke kontrole. Aplikaci můžete nejprve vydat pro interní testování, následně do beta testování a až pak do produkce. V článku najdete kontrolní seznam kroků, na které myslet, a také to, jaké všechny služby možná budete k aplikaci potřebovat.
1. Vývojářský účet v Play Console
Vývojářský účet vytvoříte v Play Console a zaplatíte jednorázový poplatek. Při registraci volíte mezi osobním účtem a účtem organizace a Google si bude chtít ověřit vaši totožnost dokladem a platební kartou na vaše jméno. Účet organizace navíc vyžaduje číslo D-U-N-S, které firma získá zdarma u společnosti Dun & Bradstreet.
Volba typu účtu ovlivní celé první vydání. Osobní účty založené po 13. 11. 2023 musí podle nápovědy Play Console před zveřejněním aplikace projít uzavřeným testem, u účtů organizací tato povinnost není. Pokud aplikaci vydáváte za firmu nebo pro klienta, založte rovnou účet organizace.
2. Zdrojový kód, build a podepisování
Zdrojový kód aplikace již máte pravděpodobně v repozitáři, například na GitHubu nebo GitLabu. Produkční build mobilní aplikace by měl vznikat v CI, ne na počítači vývojáře. Balíček nativní aplikace v Kotlinu nebo Javě pro Google Play sestavíte pomocí příkazu ./gradlew bundleRelease, který můžete spouštět v GitHub Actions, GitLab CI, Bitrise nebo Codemagic. Flutter má pro totéž příkaz flutter build appbundle.
Aplikaci v Expu nebo React Native vám sestaví v cloudu služba EAS Build a do Google Play ji nahrajete pomocí EAS Submit. Buildy, odeslání do obchodu, ale i přístupové údaje pak najdete v projektu na expo.dev. Pro odesílání do Google Play potřebuje EAS klíč servisního účtu Google s přístupem do Play Console.
Balíček se před nahráním podepisuje nahrávacím klíčem (upload key) uloženým v souboru keystore. Podpisový klíč, kterým se aplikace podepisuje pro uživatele, drží Google v rámci Play App Signing, takže ztracený nahrávací klíč jde v Play Console vyměnit. Soubor keystore a jeho hesla uložte do správce hesel a do tajných proměnných CI, nikdy ne přímo do repozitáře.
3. Notifikace a služby Googlu ve Firebase
Firebase je platforma Googlu, přes kterou na Androidu běží push notifikace (Firebase Cloud Messaging). Ve Firebase můžete také zapnout hlášení pádů Crashlytics, Analytics, Remote Config nebo přihlašování Authentication. Pomocí konfiguračního souboru google-services.json z konzole Firebase, který vložíte do zdrojového kódu, provážete vaši aplikaci s projektem Firebase.
Další API Googlu, jako například Mapy nebo přihlášení přes Google, spravujete v Google Cloud Console ve stejném projektu. API klíče tam omezte na balíček aplikace a otisk podpisového certifikátu.
4. Testování před vydáním
Testování na Google Play začíná interním testem (Internal testing), který vydáte pro malou skupinu lidí. Nový osobní účet pak musí spustit uzavřený test (Closed testing) s testery, kteří jsou v testu přihlášení Googlem stanovaný počet dní (obvykle 14). Po splnění podmínek požádáte v Dashboardu o vydání do produkce a Google vaší žádost zpracuje.
Na nahraný balíček Google Play automaticky spouští předběžný přehled (pre-launch report), který aplikaci prověří robotickým testem na několika skutečných zařízeních a ukáže problémy se stabilitou, s přístupností nebo se zabezpečením. Pro vlastní testování na konkrétních zařízeních můžete použít také externí služby. Samsung Remote Test Lab nabízí zdarma vzdálený přístup ke skutečným telefonům Galaxy a BrowserStack App Live k zařízením různých výrobců. Appetize spustí aplikaci v prohlížeči, což se hodí pro testery, podporu nebo ukázku zákazníkovi.
U nového osobního účtu trvá cesta k veřejné aplikaci nejméně 14 dní uzavřeného testu a až 7 dní posouzení žádosti o produkci, k tomu kontrola samotného vydání. Testery si zajistěte předem a uzavřený test spusťte, jakmile máte použitelné sestavení.
5. Monitoring a logování v produkci
Monitoring chyb zapojte ještě před prvním vydáním, abyste o pádech věděli od prvních uživatelů. Sentry nebo Firebase Crashlytics zachytí pády i chyby, které aplikaci neshodí, a budete mít i základní informace o zařízení a verzi Androidu. Pokud u chyb posíláte i číslo verze aplikace (v Sentry jako release), uvidíte, ve které verzi chyba vznikla a jestli ji oprava odstranila.
Google Play sleduje stabilitu aplikace sám v části Android vitals. Pokud podíl uživatelů, kterým aplikace spadne, překročí 1,09 % nebo podíl uživatelů se zamrznutím aplikace (ANR) 0,47 %, Google podle dokumentace Android vitals sníží viditelnost aplikace v obchodě. Mobilní aplikace většinou závisí na vlastním API, takže k monitoringu patří i logy backendu a kontrola dostupnosti API.
6. Legislativa: zásady ochrany osobních údajů, podmínky a GDPR
Zásady ochrany osobních údajů vyžaduje Google u každé aplikace, i u té, která žádná osobní data nesbírá. Pokud aplikaci používají lidé v EU, zásady zároveň plní informační povinnost podle GDPR: co sbíráte, proč, jak dlouho to uchováváte a komu data předáváte. Zásady musí být veřejná webová stránka, nesmí být ve formátu PDF a odkaz na ně musí být v Play Console i v aplikaci.
Dotazník Data safety v Play Console musí odpovídat zásadám a zahrnout i data, která sbírají knihovny třetích stran, typicky Firebase Analytics, Crashlytics nebo Sentry. Se službami, které pro vás zpracovávají osobní údaje, potřebujete podle GDPR smlouvu o zpracování (DPA), kterou u velkých služeb přijímáte v nastavení účtu. Pokud si v aplikaci může uživatel založit účet, musí ho mít možnost smazat v aplikaci, ale i přes webovou stránku. Google nevyžaduje podmínky použití, ale u aplikací s účty nebo platbami je budete potřebovat.
Tento přehled není právním poradenstvím, konkrétní znění dokumentů konzultujte se svým právníkem.
7. Co připravit pro Play Console
Než v Play Console založíte aplikaci, připravte si balíček aplikace, marketingovou grafiku a texty. Bez nich totiž nové vydání neodešlete ke kontrole.
8. Všechny odkazy mobilní aplikace na jednom místě
Kolem mobilní aplikace se do jejího vydání nasbírá řada služeb: repozitář, CI nebo projekt v Expu, Firebase, Play Console, testovací služby, Sentry a právní dokumenty. V AboutTheApp uložíte odkazy na všechny tyto služby k aplikaci, rozdělené do kategorií. Tým je najde v dashboardu a na About page, uživatel v aplikaci uvidí jen ty veřejné.
AboutTheApp neukládá keystore, hesla ani API klíče a nesynchronizuje údaje s Play Console. Drží odkazy a k soukromým odkazům se bez přihlášení dostane jen ten, kdo zná kód pro odemknutí.
- 1
Založte aplikaci
V dashboardu klikněte na Přidat produkt a vyplňte název a alias. Alias určuje adresu About page, například aboutthe.app/rezervace-zasedacek.
- 2
Přidejte odkazy podle kategorií
Klikněte na Přidat odkaz, vyberte kategorii podle tabulky níže a vložte adresu. Vlastním popiskem odlišíte odkazy ve stejné kategorii, například Sentry a Crashlytics.
- 3
Určete, kdo odkazy uvidí
Interní služby nastavte jako soukromé, zásady, podmínky, podporu a stránku v obchodě jako veřejné. Externím testerům nebo agentuře, která aplikaci testuje, můžete dát kód pro odemknutí, se kterým soukromé odkazy uvidí bez účtu v AboutTheApp.
- 4
Použijte About page jako web aplikace
Pokud aplikace nemá vlastní web, zadejte v Play Console do pole Website adresu About page. Do pole Privacy policy zadejte přímo odkaz na znění zásad.
- 5
Zobrazte veřejné odkazy v aplikaci
Do webové nebo hybridní aplikace vložte About box. V nativní aplikaci načtěte data z JSON API https://aboutthe.app/api/v1/abouts/<alias> a zobrazte je na vlastní obrazovce O aplikaci. Změna odkazu v dashboardu se v aplikaci projeví bez nového vydání.
| Kategorie v AboutTheApp | Odkazy mobilní aplikace | Obvykle vidí |
|---|---|---|
| Zdrojový kód a architektura | Repozitář na GitHubu nebo GitLabu | Tým |
| DevOps a infrastruktura | CI pipeline, projekt na expo.dev, projekt Firebase, Google Cloud Console, aplikace v Play Console a App Store Connect | Tým |
| Monitoring a kvalita | Sentry, Crashlytics, Android vitals, logy backendu, Samsung Remote Test Lab, BrowserStack, Appetize | Tým a testeři |
| Bezpečnost | Položka ve správci hesel s keystore a klíči servisních účtů | Tým |
| Právo a vztahy | Zásady ochrany osobních údajů, podmínky použití, smazání účtu, smlouvy o zpracování | Zásady a podmínky všichni, smlouvy tým |
| Podpora | E-mail podpory, helpdesk | Všichni |
| Vlastní | Stránka aplikace na Google Play a v App Store | Všichni |
9. Po schválení: postupné zavádění a aktualizace
Postupné zavádění (staged rollout) pošle aktualizaci nejdřív jen části uživatelů, například 10 %. V Sentry nebo Crashlytics a v Android vitals pak sledujete problémy, a pokud žádné nejsou, tak podíl zvyšujete, anebo naopak případně zavádění zcela zastavíte.
Každá aktualizace prochází stejnou kontrolou jako první vydání, jen obvykle rychleji. Před nahráním zvyšte versionCode a zkontrolujte cílovou úroveň API. Do Play Console patří zkrácené poznámky k vydání, nejvýš 500 znaků na jazyk. Plné poznámky k vydání zapište v AboutTheApp přes Verze produktu → Přidat verzi, případně je zapíše krok v GitHub Actions. Pokud nevíte, jak verze číslovat, přečtěte si článek o verzování aplikací.
Časté otázky
Jak dlouho trvá schválení aplikace na Google Play?
Kontrola vydání podle Googlu obvykle trvá do 7 dní, za běžných okolností se vydání aktualizací schvalují do 24 hod. První vydání nové aplikace může trvat déle. Nový osobní účet musí ještě předtím 14 dní testovat aplikaci s 12 testery a počkat na schválení přístupu do produkce, takže první publikace zabere klidně tři týdny.
Musím mít pro publikaci na Google Play testery?
Jen pokud máte osobní vývojářský účet založený po 13. 11. 2023, musí takový účet před zveřejněním spustit uzavřený test s nejméně 12 testery po dobu 14 dní. Účty organizací tuto povinnost nemají.
Co musí mobilní aplikace splňovat kvůli GDPR?
Aplikace pro uživatele v EU musí mít zásady ochrany osobních údajů s informacemi o tom, jaká data aplikace sbírá, proč a komu je předává, včetně služeb jako Firebase nebo Sentry. Se službami, které osobní údaje zpracovávají, potřebujete smlouvu o zpracování a uživatel musí mít možnost smazat svůj účet. Konkrétní znění vždy konzultujte s právníkem.
Jaké odkazy si k mobilní aplikaci uložit?
Všechny. Repozitář, CI pipeline nebo projekt v Expu, projekt Firebase, aplikaci v Play Console, testovací služby, monitoring chyb a logy, položku ve správci hesel s podpisovým klíčem a právní dokumenty. V AboutTheApp je uložíte k aplikaci do kategorií a u každého odkazu určíte, jestli je veřejný nebo soukromý.
Ve zkratce
Publikace na Google Play je hlavně o správné přípravě: založit účet, sestavit build, podepsat ho, připojit Firebase, provést testování, zapnout monitoring a sepsat právní dokumenty. Odkazy na všechny tyto služby mějte u aplikace v AboutTheApp, aby je tým, testeři i uživatelé našli na jednom místě.
Chcete mít všechny služby aplikace na jednom místě?
Založte si zdarma aplikaci v AboutTheApp a přidejte k ní odkazy na repozitář, Firebase, Play Console, monitoring a právní dokumenty.