W wielu firmach formularz o danych w Google Play i etykiety prywatności w App Store wypełniono raz — w 2021 lub 2022 r., gdy sklepy zaczęły ich wymagać — i nikt do nich nie wrócił. Od tego czasu aplikacja dostała nowe funkcje, analitykę, czat, reklamy, raporty awarii. Deklaracje w sklepie opisują aplikację, której już nie ma.
Dopóki nikt tego nie sprawdzi, nic się nie dzieje. Ale sklepy sprawdzają coraz dokładniej: analizują, jakie biblioteki są w aplikacji, z jakich uprawnień korzysta i dokąd wysyła dane. Skutek niezgodności to odrzucona aktualizacja w najmniej odpowiednim momencie, e-mail z terminem na poprawki albo usunięcie aplikacji ze sklepu.
Ten tekst zbiera w jednym miejscu wymogi prywatności obu sklepów, które najczęściej sprawiają problemy właścicielom istniejących aplikacji, i opisuje, jak je uporządkować.
Przegląd wymogów
Wymóg Sklep Od kiedy Co grozi przy braku lub błędach Formularz Data safety (bezpieczeństwo danych) Google Play 2022 odrzucenie aktualizacji, wezwanie do poprawek, usunięcie aplikacji Polityka prywatności oba sklepy Google Play — dla wszystkich aplikacji od 2022 blokada publikacji Etykiety prywatności (App Privacy) App Store 2020 odrzucenie, usunięcie przy rażących rozbieżnościach Zgoda na śledzenie (ATT) App Store iOS 14.5, 2021 odrzucenie przy śledzeniu bez zgody Privacy manifest i API wymagające uzasadnienia App Store maj 2024 odrzucenie wysłanej wersji Usuwanie konta w aplikacji App Store czerwiec 2022 odrzucenie aktualizacji Usuwanie konta w aplikacji i przez stronę WWW Google Play grudzień 2023 (z możliwością przedłużenia do maja 2024) wezwanie do poprawek, ograniczenie aktualizacji Deklaracje uprawnień wrażliwych Google Play różne terminy odrzucenie, usunięcie aplikacjiFormularz Data safety w Google Play
W sekcji Data safety deklarujesz, jakie dane aplikacja zbiera (wysyła z telefonu) i udostępnia (przekazuje innym firmom), w jakim celu, czy jest to obowiązkowe i jak są chronione. Formularz musi wypełnić każda aplikacja — także taka, która nie zbiera żadnych danych.
Najczęstsze błędy, które widzimy w istniejących aplikacjach:
- Pominięte biblioteki zewnętrzne. Deklaracja obejmuje dane zbierane przez wszystkie SDK w aplikacji, a nie tylko przez Twój kod. Firebase Analytics, Crashlytics, Facebook SDK, biblioteki reklamowe i czaty zbierają identyfikatory urządzeń, dane o użyciu aplikacji czy dzienniki awarii. Jeśli formularz mówi „nie zbieramy danych”, a w aplikacji jest analityka — deklaracja jest nieprawdziwa.
- Formularz nieaktualizowany po zmianach. Dodana lokalizacja, nowy formularz kontaktowy, integracja z systemem płatności — każda taka zmiana może wymagać aktualizacji deklaracji.
- Pomylone „zbieranie” z „udostępnianiem”. Przekazanie danych do usługodawcy, który przetwarza je w Twoim imieniu (np. hosting, raporty awarii), zwykle nie jest udostępnianiem w rozumieniu Google — ale przekazanie do sieci reklamowej już tak.
- Niespójność z polityką prywatności. Google porównuje deklaracje z polityką prywatności i z tym, co faktycznie robi aplikacja. Rozbieżność to naruszenie zasad.
Dostawcy popularnych SDK publikują opisy danych, które zbierają ich biblioteki, z myślą o tym formularzu. Zacznij od listy wszystkich bibliotek w aplikacji i sprawdź każdą z nich.
Etykiety prywatności i zgoda na śledzenie w App Store
App Store wymaga podobnej deklaracji w App Store Connect (App Privacy). Na stronie aplikacji w sklepie wyświetla się ona jako etykieta prywatności: dane powiązane z użytkownikiem, dane używane do śledzenia i dane niepowiązane z tożsamością. Zasada jest ta sama co w Google Play — deklaracja obejmuje również biblioteki zewnętrzne.
Osobny wymóg to App Tracking Transparency (ATT). Jeśli aplikacja łączy dane o użytkowniku z danymi z innych aplikacji lub stron w celach reklamowych albo przekazuje je brokerom danych, musi najpierw zapytać o zgodę systemowym oknem. Dotyczy to również bibliotek reklamowych i niektórych narzędzi marketingowych, które robią to „po cichu”. Śledzenie bez zgody to częsty powód odrzucenia.
Privacy manifest i API wymagające uzasadnienia (iOS)
Od maja 2024 r. Apple wymaga, żeby aplikacje i biblioteki zewnętrzne zawierały plik privacy manifest (PrivacyInfo.xcprivacy). Opisuje on, jakie dane zbiera kod i — co sprawia najwięcej kłopotów — po co korzysta z tzw. API wymagających uzasadnienia (required reason APIs). To zwyczajne funkcje systemu, np. UserDefaults, odczyt daty modyfikacji pliku, czasu od uruchomienia systemu czy wolnego miejsca na dysku. Apple wymaga uzasadnienia, bo dają się użyć do tworzenia „odcisku palca” urządzenia.
W praktyce problem wygląda tak: aplikacja nie była aktualizowana od dłuższego czasu, ktoś wysyła drobną poprawkę, a Apple odpowiada e-mailem z błędem ITMS-91053 („Missing API declaration”) albo informacją o bibliotece bez wymaganego manifestu lub podpisu. Popularne biblioteki — m.in. Firebase, wiele pluginów Fluttera i modułów React Native — mają manifesty dopiero w nowszych wersjach.
Naprawa składa się z dwóch części: dodania własnego manifestu z deklaracjami dla kodu aplikacji i aktualizacji bibliotek do wersji, które mają własne manifesty. Ta druga część bywa trudniejsza, bo nowe wersje bibliotek wymagają często nowszego frameworka. Jeśli aplikacja jest we Flutterze lub React Native i nie była aktualizowana od lat, zobacz tekst o aktualizacji starej aplikacji.
Usuwanie konta: wymóg obu sklepów
Jeśli w aplikacji można założyć konto, oba sklepy wymagają, żeby można je było też usunąć. To jeden z wymogów, które najczęściej zaskakują właścicieli starszych aplikacji, bo dotyczy nie tylko ekranu w aplikacji, ale też backendu.
App Store (od czerwca 2022 r.):
- usunięcie konta musi dać się rozpocząć w aplikacji, w łatwym do znalezienia miejscu, np. w ustawieniach konta,
- usunięcie musi oznaczać usunięcie konta i danych, a nie tylko dezaktywację,
- jeśli aplikacja używa logowania przez Apple (Sign in with Apple), przy usuwaniu konta trzeba unieważnić tokeny przez API Apple,
- w branżach regulowanych dopuszczalny jest dodatkowy krok, np. potwierdzenie przez obsługę klienta — ale proces musi się zacząć w aplikacji.
Google Play (od grudnia 2023 r., z przedłużeniami do maja 2024 r.):
- usunięcie konta musi być dostępne w aplikacji,
- dodatkowo potrzebny jest adres strony internetowej, na której można poprosić o usunięcie konta bez instalowania aplikacji — podaje się go w formularzu Data safety,
- dane powiązane z kontem trzeba usunąć; jeśli część musisz przechowywać dłużej (np. faktury ze względów podatkowych), trzeba to opisać.
Po stronie technicznej oznacza to zwykle: ekran w aplikacji z potwierdzeniem, endpoint na serwerze, który faktycznie usuwa lub anonimizuje dane we wszystkich miejscach (baza, pliki, usługi zewnętrzne, systemy mailingowe), stronę WWW z formularzem i opisaną procedurę. Przy okazji porządkuje to realizację prawa do usunięcia danych z RODO, którą i tak trzeba zapewnić.
Uprawnienia wrażliwe w Google Play
Google Play ogranicza dostęp do części uprawnień i wymaga uzasadnienia w Play Console. Dotyczy to m.in. lokalizacji w tle, dostępu do SMS-ów i rejestru połączeń, listy zainstalowanych aplikacji oraz — od niedawna — szerokiego dostępu do zdjęć i filmów. Aplikacje, które potrzebują zdjęć tylko okazjonalnie (np. do dodania awatara), mają korzystać z systemowego selektora zdjęć zamiast prosić o dostęp do całej galerii.
Starsze aplikacje często mają w manifeście uprawnienia, z których nikt już nie korzysta — dodane kiedyś przez bibliotekę albo funkcję, którą usunięto. Każde takie uprawnienie to potencjalny problem przy przeglądzie. Najprostsze rozwiązanie: usuń nieużywane uprawnienia, a dla pozostałych przygotuj uzasadnienie zgodne z rzeczywistym działaniem aplikacji. Aplikacja na reklamowym identyfikatorze urządzenia (advertising ID), celująca w Androida 13 lub nowszego, musi też jawnie deklarować uprawnienie AD_ID.
Polityka prywatności
Oba sklepy wymagają linku do polityki prywatności, a jej treść musi zgadzać się z tym, co deklarujesz w formularzach i co faktycznie robi aplikacja. Typowe problemy:
- polityka napisana dla strony internetowej, która nie wspomina o aplikacji, jej uprawnieniach ani bibliotekach,
- link w sklepie prowadzący do nieistniejącej strony (np. po zmianie domeny lub przebudowie serwisu),
- brak informacji o usuwaniu konta i danych.
Polityka prywatności to dokument prawny, więc jej treść warto skonsultować z prawnikiem. Rolą zespołu technicznego jest dostarczenie rzetelnej listy: jakie dane zbiera aplikacja, przez jakie biblioteki, dokąd je wysyła i jak długo przechowuje.
Jak zrobić przegląd zgodności
- Zrób listę bibliotek w aplikacji (Android, iOS, a w aplikacjach cross-platform — także pluginy) i sprawdź, jakie dane zbiera każda z nich.
- Sprawdź uprawnienia w manifeście Androida i opisach uprawnień w iOS. Usuń nieużywane.
- Podejrzyj ruch sieciowy zbudowanej aplikacji: dokąd wysyła dane i jakie. To najpewniejszy sposób, żeby wyłapać biblioteki, o których nikt nie pamiętał.
- Porównaj wyniki z deklaracjami w Data safety, App Privacy i polityce prywatności. Zapisz rozbieżności.
- Sprawdź usuwanie konta — czy jest w aplikacji, czy działa strona WWW, czy dane są naprawdę usuwane z backendu i usług zewnętrznych.
- Zaktualizuj biblioteki do wersji z privacy manifestami i przygotuj własny manifest.
- Popraw deklaracje i politykę, a potem wydaj aktualizację.
- Wpisz to w proces wydań. Każda nowa biblioteka lub nowe dane to punkt kontrolny: czy trzeba zmienić formularze? Najłatwiej o tym pamiętać, gdy jest to element umowy na utrzymanie aplikacji.
Ile to trwa
Zadanie Orientacyjny czas Przegląd bibliotek, uprawnień i ruchu sieciowego, porównanie z deklaracjami 1–3 dni Poprawki w formularzach Data safety i App Privacy kilka godzin Privacy manifest — gdy wystarczy aktualizacja bibliotek 1–2 dni Privacy manifest — gdy wymaga aktualizacji frameworka osobny projekt, od kilku dni do kilku tygodni Usuwanie konta: aplikacja, backend i strona WWW 3–10 dni, zależnie od tego, w ilu miejscach są danePodsumowanie
Wymogi prywatności w Google Play i App Store nie są jednorazowym formularzem, tylko opisem aplikacji, który musi nadążać za jej zmianami. W starszych aplikacjach najczęściej brakuje usuwania konta, privacy manifestu i aktualnych deklaracji obejmujących wszystkie biblioteki. Każdy z tych problemów potrafi zablokować pilną aktualizację, a w skrajnym przypadku — doprowadzić do usunięcia aplikacji ze sklepu. Jeśli sklep już odrzucił wersję, zobacz też, co zrobić krok po kroku po odrzuceniu aplikacji.
Jeśli nie wiesz, czy deklaracje Twojej aplikacji są aktualne, zamów bezpłatną analizę aplikacji — sprawdzimy biblioteki, uprawnienia i wymogi obu sklepów. Bieżące dostosowywanie aplikacji do zmian w zasadach Google i Apple prowadzimy w ramach utrzymania aplikacji mobilnych.