Vylúčenie zodpovednosti: Zhrnutia pravidiel sú iba prehľady. Ak chcete dodržiavať pravidlá, vždy sa riaďte ich úplným znením. V prípade rozporu má prednosť úplné znenie pravidiel.
Služba Google Play zakazuje vašej aplikácii (alebo akýmkoľvek súpravám SDK tretích strán v nej) neoprávnený prístup či rušenie používateľovho zariadenia, iných zariadení, siete, rozhrania API alebo služby, iných aplikácií v zariadení, akejkoľvek služby spoločnosti Google či siete autorizovaného operátora. Týka sa to radu škodlivých, vysoko rizikových alebo rušivých správaní, napríklad vykonávania svojpomocných aktualizácií mimo služby Obchod Play, sťahovania neautorizovaného spustiteľného kódu, využívania nedostatkov zabezpečenia, sprostredkúvania hackovania či vytvárania pomôcok v hrách ovplyvňujúcich iné aplikácie. Prvoradé je chrániť integritu používateľovho zariadenia a širší ekosystém. Prečítajte si celé pravidlá a zaistite ich dodržiavanie.
Nepovoľujeme aplikácie, ktoré ovplyvňujú, narúšajú alebo poškodzujú zariadenie používateľa, ďalšie zariadenia alebo počítače, servery, siete, aplikačné programové rozhrania (API) či služby (okrem iného vrátane aplikácií v zariadení, akýchkoľvek služieb Googlu alebo autorizovaných sietí operátora) alebo ktoré k nim neoprávneným spôsobom pristupujú.
Aplikácie na Google Play musia byť v súlade s predvolenými požiadavkami na optimalizáciu systému Android, ktoré sú uvedené v pokynoch pre kvalitu základných aplikácií pre službu Google Play.
Aplikácia distribuovaná prostredníctvom služby Google Play sa nesmie sama upravovať, nahrádzať ani aktualizovať žiadnym iným spôsobom, než je aktualizačný mechanizmus služby Google Play. Nemôže tiež sťahovať spustiteľný kód (napr. súbory DEX, JAR, SO) zo zdroja mimo služby Google Play. Toto obmedzenie neplatí pre kód spúšťaný vo virtuálnom počítači alebo interpretačnom nástroji, ktorý má nepriamy prístup k rozhraniam Android API (ako JavaScript v prvku WebView či prehliadači).
Aplikácie alebo kód tretej strany (napr. súpravy SDK) s interpretovanými jazykmi (JavaScript, Python, Lua a podobne) načítavanými v čase spustenia (napr. takými, ktoré nie sú súčasťou balíka aplikácie) nesmú umožňovať potenciálne porušovanie pravidiel služby Google Play.
Nepovoľujeme kód, ktorý vytvára alebo zneužíva nedostatky zabezpečenia. Informácie o najaktuálnejších problémoch zabezpečenia nahlásených vývojárom nájdete v programe na zlepšenie zabezpečenia aplikácie.
Príklady bežných porušení spočívajúcich v zneužívaní zariadení a sietí:
- aplikácie, ktoré blokujú alebo narúšajú inú aplikáciu zobrazujúcu reklamy;
- aplikácie s hernými kódmi, ktoré ovplyvňujú hranie v ostatných aplikáciách;
- aplikácie, ktoré napomáhajú alebo poskytujú pokyny na to, ako prelomiť zabezpečenie služieb, softvéru či hardvéru alebo ako obísť bezpečnostné opatrenia;
- aplikácie, ktoré používajú službu či rozhranie API spôsobom porušujúcim jeho zmluvné podmienky alebo k nemu týmto spôsobom získavajú prístup;
- aplikácie, ktoré nespĺňajú podmienky pridania na zoznam povolených a pokúšajú sa obísť správu napájania systému;
- aplikácie sprostredkúvajúce služby proxy serverov tretím stranám, čo je povolené iba v prípadoch, kedy je to hlavným účelom určeným pre používateľov;
- aplikácie alebo kódy tretích strán (napríklad súpravy SDK), ktoré sťahujú zo zdroja mimo služby Google Play spustiteľný kód, napríklad súbory dex alebo natívny kód;
- aplikácie, ktoré inštalujú ďalšie aplikácie do zariadenia bez predchádzajúceho súhlasu používateľa;
- aplikácie, ktoré sprostredkúvajú distribúciu či inštaláciu škodlivého softvéru alebo na ňu odkazujú;
- aplikácie alebo kód tretej strany (napríklad súpravy SDK) obsahujúce prvok WebView s pridaným rozhraním JavaScript, ktoré nahráva nedôveryhodný webový obsah (napríklad webovú adresu http://) alebo neoverené webové adresy z nedôveryhodných zdrojov (napríklad webové adresy získané z nedôveryhodných intencií);
- aplikácie, ktoré pomocou povolenia intencií na celú obrazovku vynucujú interakciu používateľov s rušivými reklamami alebo upozorneniami;
- aplikácie, ktoré obchádzajú ochranu karantény Androidu s cieľom odvodiť informácie o aktivite alebo totožnosti používateľa z iných aplikácií.
Dôležité faktory
| Čo robiť | Čo nerobiť |
| V pokynoch pre kvalitu základných aplikácií sa uistite, že vaša aplikácia a všetky integrované súpravy SDK sú v súlade s požiadavkami na optimalizáciu systému Android. | Neinštalujte v zariadení iné aplikácie bez výslovného súhlasu používateľa. |
Zohľadnite nastavenie FLAG_SECURE. Kontajnery v zariadení musia zohľadňovať nastavenie REQUIRE_SECURE_ENV. |
Nevyužívajte proxy služby tretích strán, pokiaľ to nie je hlavný a základný účel vašej aplikácie pre používateľa. |
| Nastavenie Prenosy údajov iniciované používateľmi používajte iba pre prenosy údajov cez sieť iniciované používateľmi, pričom však môžu byť spustené iba nevyhnutne dlhý čas. | Vo svojej aplikácii nepoužívajte súpravy SDK tretích strán, ktoré sťahujú spustiteľný kód (napríklad súbory dex alebo .so), z inej služby ako Google Play (s výnimkou virtuálnych počítačov a prekladacích programov). |
| Informácie o najaktuálnejších problémoch zabezpečenia nahlásených vývojárom nájdete v programe na zlepšenie zabezpečenia aplikácie. | Neobchádzajte správu napájania systému, pokiaľ na to nemáte oprávnenie. |
| Dodržiavajte pravidlá pre služby na popredí. | Neblokujte ani nenarúšajte inú aplikáciu zobrazujúcu reklamy. |
Nepoužívajte povolenie FULL-SCREEN INTENT na vynucovanie interakcií s rušivými reklamami alebo upozorneniami. |
Používanie služieb na popredí
Pravidlá povolení pre služby na popredí zaisťujú transparentnosť voči používateľom, ochranu súkromia a optimálny výkon zariadenia. V prípade aplikácií zacielených na systém Android 14 alebo novší musíte deklarovať platné typy služieb na popredí v manifeste aj službe Play Console, poskytnúť opisy, vplyv na používateľov a videoukážku ich používania na základe akcií iniciovaných a postrehnuteľných používateľom. Prečítajte si celé pravidlá a zaistite ich dodržiavanie.
Povolenie pre služby na popredí zaisťuje náležité využívanie služieb na popredí pre používateľa. V prípade aplikácií zacielených na systém Android 14 a novší musíte špecifikovať platný typ každej služby na popredí používanej vo vašej aplikácii a deklarovať povolenie pre služby na popredí náležite zodpovedajúce danému typu. Ak napríklad prípad použitia vašej aplikácie vyžaduje geolokáciu na mapách, v jej manifeste musíte deklarovať povolenie FOREGROUND_SERVICE_LOCATION.
Aplikácie majú povolené deklarovať povolenie pre služby na popredí iba vtedy, keď jeho použitie:
- poskytuje funkciu výhodnú pre používateľa a relevantnú vzhľadom na základnú funkciu aplikácie;
- spúšťa používateľ alebo je preňho postrehnuteľné (napríklad zvuk prehrávanej skladby, prenos média do iného zariadenia, presné a jasné používateľské upozornenie, používateľova žiadosť o nahranie fotky do cloudu);
- môže používateľ zrušiť alebo zastaviť;
- nemôže systém prerušiť ani odložiť bez toho, aby to negatívne neovplyvnilo dojem používateľa či nespôsobilo, že používateľom očakávaná funkcia nebude pracovať podľa očakávaní (napríklad telefonický hovor musí začať okamžite a nemôže byť odložený systémom);
- trvá iba toľko, koľko je potrebné na dokončenie príslušnej úlohy.
Z kritérií vyššie sú vyňaté tieto prípady použitia služby na popredí:
- typ služby na popredí systemExempted alebo shortService;
- typ služby na popredí dataSync, ale iba pri používaní funkcií Play Asset Delivery.
Používanie služby na popredí je podrobnejšie vysvetlené na tejto stránke.
Dôležité faktory
| Čo robiť | Čo nerobiť |
| Služby na popredí spúšťajte iba na čas nevyhnutný na dokončenie úlohy. | Služby na popredí nepoužívajte, ak sa správa systému vašej úlohy nezobrazí v používateľskom prostredí vo vašej aplikácii. Zvážte použitie alternatívy, ako je nástroj WorkManager. |
| Zaistite, aby služby na popredí poskytovali základnú funkciu aplikácie, ktorá bude pre používateľa prospešná, aby ich spúšťal používateľ a aby boli viditeľné v upozorneniach alebo tak, aby si ich používateľ všimol (napríklad zvuk z prehrávajúcej sa skladby). | V manifeste svojej aplikácie nedeklarujte neplatné alebo nesprávne typy služieb na pozadí. |
| Ak je vaša aplikácia zacielená na systém Android 14 alebo novší, odošlite formulár na deklaráciu v službe Play Console a opíšte prípady použitia jednotlivých vybraných povolení pre služby na popredí. Uistite sa, že je vybraný príslušný typ služby na popredí. |
Úlohy prenosu údajov spustené používateľom
Služba Google Play ponúka presné pokyny týkajúce sa aplikácií používajúcich rozhrania API na prenos údajov iniciovaný používateľmi, aby bolo zachované ovládanie používateľom a aby bolo možné predchádzať dlhej aktivite na pozadí. Prenos údajov musí iniciovať priamo používateľ a príslušná aplikácia musí jeho príkaz vykonať – prenosy sa nesmú spúšťať nezávisle. V prípade týchto prenosov ide výhradne o prenos údajov cez sieť. Musia trvať iba tak dlho, kým sa nedokončí požadovaná akcia. Prečítajte si celé pravidlá a zaistite ich dodržiavanie.
Aplikácie môžu používať rozhranie API pre úlohy prenosu údajov spustené používateľom iba vtedy, keď jeho použitie:
- spúšťa používateľ;
- sa týka iba úloh prenosu údajov v sieti;
- trvá iba toľko, koľko je potrebné na dokončenie prenosu údajov.
Používanie rozhraní API pre prenos údajov spustený používateľom je podrobnejšie vysvetlené na tejto stránke.
Dôležité faktory
| Čo robiť | Čo nerobiť |
| Začínajte prenosy akciou používateľa | Nespúšajte prenosy automaticky |
| Používajte iba na úlohy prenosu údajov v sieti | Toto rozhranie API nepoužívajte na úlohy mimo siete |
| Po dokončení prenosu zastavte | Nenechávajte bežať dlhšie, než je potrebné |
Flag Secure – požiadavky
FLAG_SECURE je zobrazovací príznak deklarovaný aplikáciou, ktorý označuje, že citlivé údaje v používateľskom rozhraní by mali byť obmedzené na zabezpečené platformy. Zabraňuje vytváraniu snímok obrazovky a zobrazovaniu a zaznamenávaniu prostredníctvom nezabezpečených zobrazení. Vývojári ho využívajú, keď obsah nemá byť vysielaný ani zobrazovaný mimo aplikácie či zariadenia. Služba Google Play na zaistenie zabezpečenia a ochranu súkromia vyžaduje, aby všetky aplikácie rešpektovali deklarácie týkajúce sa príznaku FLAG_SECURE iných aplikácií a neobchádzali ich. Prečítajte si celé pravidlá a zaistite ich dodržiavanie.
FLAG_SECURE je experimentálna funkcia zobrazovania deklarovaná v kóde aplikácie označujúca, že používateľské rozhranie obsahuje citlivé údaje, ktorých prístupnosť má byť počas používania aplikácie obmedzená na zabezpečenú platformu. Táto funkcia abraňuje zobrazovaniu údajov v snímkach obrazovky alebo nezabezpečených zobrazeniach. Vývojári ju deklarujú, keď obsah aplikácie nesmie byť vysielaný, zobrazovaný ani inak prenášaný mimo nej či zariadenia používateľov.
Všetky aplikácie distribuované v službe Google Play musia rešpektovať deklaráciu FLAG_SECURE iných aplikácií na účely zabezpečenia a ochrany súkromia. To znamená, že nesmú sprostredkúvať ani vytvárať spôsoby obchádzania nastavenia FLAG_SECURE v iných aplikáciách.
Táto požiadavka sa nevzťahuje na aplikácie kvalifikujúce sa ako nástroje dostupnosti za predpokladu, že neprenášajú a neukladajú štandardne ani do vyrovnávacej pamäte obsah chránený funkciou FLAG_SECURE s cieľom umožniť k nemu prístup mimo používateľovho zariadenia. Dôležité faktory
| Čo robiť | Čo nerobiť |
Deklarujte povolenie FLAG_SECURE pre citlivé údaje v používateľskom rozhraní, ktoré vyžadujú ochranu pred zachytením |
Neobchádzajte nastavenia povolenia |
Rešpektujte deklarácie povolenia FLAG_SECURE iných aplikácií týkajúce sa zabezpečenia a ochrany údajov |
Neprenášajte, neukladajte ani nepridávajte do vyrovnávacej pamäte chránený obsah povolenia FLAG_SECURE mimo zariadenia, a to ani vtedy, keď je to nástroj dostupnosti |
Aplikácie, v ktorých bežia kontajnery Android v zariadení
Keď kontajner systému Android v zariadení nemá všetky bezpečnostné funkcie operačného systému Android, vývojári môžu vo svojom manifeste aplikácie používať experimentálnu funkciu REQUIRE_SECURE_ENV, aby predišli problémom so zabezpečením a ochranou súkromia. Konfigurácia pomocou tejto funkcie znamená, že daná aplikácia by nemala byť spúšťaná v simulovanom prostredí. Aplikácie poskytujúce tieto kontajnery musia rešpektovať túto experimentálnu funkciu a nenačítavať aplikácie, ktoré ju deklarovali. Navyše nesmú toto bezpečnostné opatrenie obchádzať. Prečítajte si celé pravidlá a zaistite ich dodržiavanie.
Aplikácie kontajnerov systému Android v zariadení poskytujú prostredia simulujúce celý systém Android OS alebo jeho časti. Tieto prostredia nemusia zahŕňať plnú súpravu bezpečnostných funkcií systému Android, preto môžu vývojári pridať značku manifestu bezpečného prostredia, ktorou informujú kontajnery systému Android v zariadení, že sa nesmú spúšťať v ich simulovanom prostredí systému Android.
Experimentálna funkcia manifestu bezpečného prostredia
- Skontrolujte manifesty aplikácií, ktoré plánujú načítavať vo svojom kontajneri systému Android v zariadení v prípade tejto značky.
- Nenačítavajte aplikácie, ktoré deklarovali túto značku, do ich kontajnera systému Android v zariadení.
- Nezaisťujte funkciu proxy servera zachytávaním alebo volaním rozhraní API v zariadení tak, aby sa zdalo, že sú nainštalované v kontajneri.
- Nesprostredkúvajte ani nevytvárajte alternatívne spôsoby na obchádzanie danej značky (napríklad nenačítavajte staršiu verziu aplikácie s cieľom obísť značku REQUIRE_SECURE_ENV aktuálnej aplikácie).
Dôležité faktory
| Čo robiť | Čo nerobiť |
Aplikácie, ktoré poskytujú kontajnery v zariadení, musia kontrolovať, či je v manifestoch iných aplikácií experimentálna funkcia REQUIRE_SECURE_ENV, ale nesmú ich načítavať |
Túto experimentálnu funkciu nesmiete ignorovať. Vaša aplikácia nesmie načítať inú aplikáciu do svojho kontajnera, ak je v nej deklarovaná experimentálna funkcia REQUIRE_SECURE_ENV. |
| Neobchádzajte túto funkciu. Túto experimentálnu funkciu nesmiete obchádzať napríklad načítaním starších verzií aplikácie. | Neobchádzajte bezpečnostné opatrenia. Nevytvárajte spôsoby obchádzania s cieľom prepísať nastavenie zabezpečenia určitej aplikácie. |
| Vaša aplikácia nesmie byť proxy serverom pre rozhrania API. Nesmie fungovať ako proxy server a zachytávať ani volať rozhrania API mimo kontajnera. | Nevytvárajte dojem, že aplikácie sú spustené v zabezpečenom prostredí, keď to tak nie je |
| Prečítajte si požiadavky vyplývajúce z pravidiel týkajúce sa kontajnerov systému Android v zariadení |