Przejdź do treści
GESEL.IO
StronyPozycjonowanieAplikacjePoradnik
Kreator↗EN←Strona główna
Strona główna/Poradnik/Aplikacje i produkty cyfrowe

Aplikacje i produkty cyfrowe

PWA na iOS i Androidzie: co działa, a czego nie zrobisz

Aktualizacja: 2026-08-13·7 min czytania·Redakcja GESEL.IO

Część poradnika: Jak stworzyć aplikację mobilną: proces krok po kroku dla zamawiającego

W skrócie

PWA to strona z service workerem, plikiem manifestu i połączeniem HTTPS, dodawana do ekranu początkowego bez sklepu. Na Androidzie działa niemal jak aplikacja natywna. Na iOS powiadomienia push są dostępne od iOS 16.4 (marzec 2023) i tylko po dodaniu do ekranu początkowego — w karcie przeglądarki nie zadziałają. Brakuje też pracy w tle, a limity pamięci offline są ciaśniejsze.

Na tej stronie

  1. Czym jest PWA i jakie ma techniczne minimum
  2. Co PWA daje na Androidzie
  3. Co PWA robi na iPhonie, a czego nie zrobi
  4. Czy Apple usunęło aplikacje webowe w Unii Europejskiej
  5. Kiedy PWA wystarczy zamiast aplikacji ze sklepu, a kiedy nie
  6. Koszt utrzymania: jeden kod czy dwa wydania
  7. Jak rozstrzygnąć to w tydzień, zamiast dyskutować pół roku
iOS 16.4

Od tej wersji (marzec 2023) aplikacje webowe na iPhonie mogą odbierać powiadomienia push — ale wyłącznie po dodaniu do ekranu początkowego przez Safari. W zwykłej karcie przeglądarki Push API nie jest dostępne.

PWA to aplikacja webowa, którą użytkownik dodaje do ekranu początkowego telefonu bez pośrednictwa sklepu — uruchamia się z własną ikoną i pełnym ekranem, ale pod spodem jest stroną internetową. Na Androidzie zachowuje się niemal jak aplikacja natywna. Na iOS wchodzi w zestaw ograniczeń, o których polskie poradniki milczą, a które potrafią wywrócić cały pomysł. Ten tekst jest o tej drugiej połowie: czego aplikacja webowa na iPhonie nie zrobi i kiedy to przesądza o decyzji.

Czym jest PWA i jakie ma techniczne minimum

PWA to strona internetowa spełniająca trzy warunki techniczne: ma service workera, plik manifestu i działa po HTTPS. To całe minimum — nie ma tu żadnej osobnej technologii ani osobnego języka programowania.

  • Service worker to skrypt pośredniczący między aplikacją a siecią. Odpowiada za pamięć podręczną, czyli za to, że aplikacja pokazuje cokolwiek przy słabym zasięgu, i za odbiór powiadomień.
  • Plik manifestu opisuje nazwę, ikony, kolor i tryb wyświetlania. To on decyduje, jak aplikacja wygląda po dodaniu do ekranu początkowego i czy uruchamia się bez paska adresu.
  • HTTPS jest warunkiem koniecznym: bez szyfrowanego połączenia service worker się nie zarejestruje.

Wszystko poza tą trójką — powiadomienia, praca offline, dostęp do aparatu — jest opcjonalne i zależy od systemu, na którym aplikacja działa. To jest źródło całego zamieszania: nie jest to jedna funkcja, którą się „ma” albo „nie ma”, tylko zestaw możliwości włączanych osobno na każdej platformie. Decyzja, czy w ogóle potrzebujesz wydania mobilnego, jest wcześniejsza i rozkłada się na inne kryteria — opisuję ją w tekście o tym, aplikacja webowa czy mobilna.

Co PWA daje na Androidzie

Na Androidzie aplikacja webowa dostaje niemal komplet zachowań, których użytkownik oczekuje od aplikacji ze sklepu. Instaluje się z poziomu przeglądarki, ma własną ikonę, uruchamia się na pełnym ekranie i działa przy braku zasięgu na tyle, na ile zaplanujesz pamięć podręczną.

Powiadomienia push działają bez dodatkowych warunków wstępnych. Dostępny jest też Background Sync, czyli mechanizm dosyłania danych po odzyskaniu połączenia — użytkownik wypełnia formularz w piwnicy magazynu, zamyka aplikację, a dane wychodzą, kiedy telefon złapie sieć.

Do tego dochodzi rzecz, której nie da się kupić w wydaniu ze sklepu: aktualizacja jest natychmiastowa. Wgrywasz poprawkę na serwer i użytkownik ma ją przy następnym uruchomieniu, bez procedury recenzji i bez czekania, aż zaktualizuje aplikację.

Co PWA robi na iPhonie, a czego nie zrobi

Na iOS aplikacja webowa działa, ale w węższym zakresie i pod jednym twardym warunkiem: kluczowe funkcje włączają się dopiero po dodaniu jej do ekranu początkowego. Apple dodało obsługę Web Push dla aplikacji webowych dodanych do ekranu początkowego w iOS 16.4, w marcu 2023. Powiadomienia działają wyłącznie dla aplikacji zainstalowanej przez Safari, menu Udostępnij i opcję Dodaj do ekranu początkowego. W zwykłej karcie przeglądarki Push API nie jest dostępne.

Konsekwencja jest operacyjna, nie techniczna. Użytkownik, który dostanie od Ciebie link i po prostu go otworzy, nie dostanie żadnego powiadomienia — i nie dowie się, dlaczego. Trzy dotknięcia ekranu, które go dzielą od działającej instalacji, musisz mu wytłumaczyć sam, w treści strony albo w wiadomości.

Wzór

„Na iPhonie: otwórz tę stronę w Safari, dotknij ikony Udostępnij na dole ekranu i wybierz Dodaj do ekranu początkowego. Powiadomienia włączysz dopiero w aplikacji uruchomionej z tej nowej ikony — w karcie przeglądarki nie będą działać."

Reszta ograniczeń jest mniej widoczna, ale bywa groźniejsza. Aplikacja webowa na iOS ma węższy dostęp do sprzętu niż na Androidzie, ciaśniejsze limity pamięci offline i ograniczone przetwarzanie w tle. Brakuje między innymi Background Sync, więc scenariusz „zapisz teraz, wyślij, gdy wróci zasięg” trzeba na iOS zaprojektować inaczej albo z niego zrezygnować. Aplikacje webowe na iPhonie działają na silniku WebKit.

Funkcja Android iOS
Instalacja bez sklepu Tak, z poziomu przeglądarki Tak, ręcznie: Safari → Udostępnij → Dodaj do ekranu początkowego
Powiadomienia push Tak Tak, od iOS 16.4 (marzec 2023), tylko po dodaniu do ekranu początkowego
Push w zwykłej karcie przeglądarki Tak Nie — Push API nie jest dostępne
Praca offline i pamięć podręczna Tak Tak, ale z ciaśniejszymi limitami magazynu
Dosyłanie danych w tle (Background Sync) Tak Nie
Dostęp do sprzętu telefonu Szerszy Węższy
Aktualizacja bez recenzji sklepu Tak Tak

Czy Apple usunęło aplikacje webowe w Unii Europejskiej

Nie usunęło. 1 marca 2024 Apple wycofało się z zapowiedzianego wcześniej usunięcia aplikacji webowych z ekranu początkowego w Unii Europejskiej. Funkcja pozostała w iOS 17.4 i działa dalej, nadal oparta na WebKit. Zdanie „Apple wyłączyło PWA w Unii” krąży po polskim internecie do dziś i jest po prostu nieprawdziwe.

Wniosek na przyszłość jest inny niż ten, który zwykle się z tej historii wyciąga. Nie chodzi o to, że platforma jest niestabilna — chodzi o to, że zakres funkcji aplikacji webowej zależy od decyzji dostawcy systemu, a nie od Twojego kodu. Jeśli ma ona obsługiwać proces, którego firma nie może stracić, trzymaj w zanadrzu scenariusz awaryjny: kanał zapasowy dla powiadomień i dane, które da się wyeksportować bez aplikacji.

Kiedy PWA wystarczy zamiast aplikacji ze sklepu, a kiedy nie

PWA wystarcza wtedy, gdy wartość produktu leży w danych i formularzach, a nie w sprzęcie telefonu, a użytkownik trafia do Ciebie z linku, nie z wyszukiwarki sklepu. Cztery typowe sytuacje, w których to się spina:

  • narzędzie wewnętrzne dla pracowników, którzy dostają link od działu IT,
  • panel dla klientów albo kontrahentów, logujących się do własnych danych,
  • produkt, który wydajesz często i nie chcesz czekać na recenzję przy każdej poprawce,
  • aplikacja, w której powiadomienia są przydatne, ale nie krytyczne.

PWA nie wystarczy, gdy powiadomienia push są rdzeniem produktu — dyspozycje dla kierowców, alarmy serwisowe, dyżury — bo część użytkowników iOS nigdy nie dodaje aplikacji do ekranu początkowego i nigdy ich nie zobaczy. Nie wystarczy też, gdy potrzebujesz pracy w tle albo szerokiego dostępu do czujników, a także wtedy, gdy obecność w sklepie jest warunkiem zakupowym po stronie klienta.

✗Zróbmy PWA, bo to tańsza wersja aplikacji mobilnej.
✓Zróbmy PWA, bo użytkownicy dostają link mailem, pracują na formularzach i nie potrzebują pracy w tle. Jeśli push okaże się krytyczny na iOS, wracamy do wydania ze sklepu.

Jeśli nie wiesz, które funkcje są naprawdę krytyczne, rozstrzygnij to najpierw na poziomie zakresu pierwszej wersji — dopiero potem sprawdzaj, czy iOS je udźwignie.

Koszt utrzymania: jeden kod czy dwa wydania

PWA to jedna baza kodu i jedno wdrożenie, a aplikacja ze sklepu to dwa wydania i dwa cykle publikacji — ale różnica w utrzymaniu nie sprowadza się do liczby repozytoriów. Przy jednym kodzie poprawka trafia do wszystkich użytkowników naraz i nie musisz utrzymywać zgodności ze starymi wersjami zainstalowanymi na telefonach. To jest realna, powtarzalna oszczędność w każdym miesiącu życia produktu.

Aplikacja webowa przenosi jednak koszt w dwa inne miejsca. Pierwsze to wydajność: nie ma tu paczki pobranej ze sklepu, więc każde uruchomienie oznacza wczytanie zasobów z sieci albo z pamięci podręcznej, a Core Web Vitals opisują tu realny komfort pracy, nie tylko pozycję w wyszukiwarce. Drugie to wsparcie użytkowników iOS — instrukcja dodania do ekranu początkowego, pytania o brakujące powiadomienia i wyjaśnienia, dlaczego u kolegi z Androidem działa inaczej.

Jak rozstrzygnąć to w tydzień, zamiast dyskutować pół roku

Decyzję o PWA podejmuje się na liście funkcji, nie na porównaniu technologii. Pięć kroków, które da się przejść w kilka dni:

  1. Wypisz osobno funkcje wymagające powiadomień, pracy w tle i dostępu do sprzętu. Reszta funkcji nie ma tu znaczenia, bo zadziała wszędzie.
  2. Sprawdź w analityce własnej strony, jaka część Twoich użytkowników korzysta z iOS. Twoje dane, nie ogólne statystyki rynku.
  3. Przy każdej funkcji z punktu pierwszego zaznacz, czy działa na iOS, czy tylko na Androidzie.
  4. Dla funkcji, które na iOS nie zadziałają, wybierz jedno z trzech: rezygnacja, obejście (e-mail albo SMS zamiast powiadomienia) albo wydanie ze sklepu.
  5. Zapisz decyzję razem z uzasadnieniem, żeby nie wracała na każdym kolejnym spotkaniu.

Jeśli po tym rachunku wychodzi, że wydanie ze sklepu jest konieczne, kolejne kroki — technologia, testy, publikacja — opisuję w przewodniku o tym, jak stworzyć aplikację mobilną. A jeśli chcesz spisać te ustalenia w formie gotowej do rozmowy z wykonawcą, przejdź przez sześć kroków w kreatorze briefu i wróć z listą funkcji, przy których platforma naprawdę robi różnicę.

Baza wiedzy

Nie wiesz, czy PWA wystarczy w Twoim przypadku?

Opisz projekt w kreatorze briefu — wrócimy z oceną, czy aplikacja webowa uniesie Twoje funkcje, czy potrzebne jest wydanie ze sklepu.

Otwórz kreator briefu↗

Checklista

  • ✓

    Wypisz osobno funkcje wymagające powiadomień, pracy w tle i dostępu do sprzętu.

  • ✓

    Sprawdź w analityce własnej strony, jaka część Twoich użytkowników korzysta z iOS.

  • ✓

    Dla każdej funkcji krytycznej rozstrzygnij, czy działa na iOS, czy tylko na Androidzie.

  • ✓

    Zaplanuj obejście dla funkcji, których iOS nie obsłuży — e-mail lub SMS zamiast powiadomienia push.

  • ✓

    Przygotuj instrukcję dodania aplikacji do ekranu początkowego przez Safari i wpisz ją w onboarding.

  • ✓

    Policz koszt utrzymania jednego kodu wobec dwóch wydań, wliczając wsparcie użytkowników iOS.

  • ✓

    Zapisz decyzję z uzasadnieniem, żeby nie wracała na każdym kolejnym spotkaniu.

Najczęstsze pytania

Czy PWA może zastąpić aplikację mobilną ze sklepu?
W wielu zastosowaniach biznesowych tak — jeśli produkt opiera się na formularzach, listach i danych, a nie na sprzęcie telefonu. Zastąpienie przestaje działać, gdy powiadomienia push są rdzeniem produktu albo gdy aplikacja musi dosyłać dane w tle, przy zamkniętym oknie. Rozstrzyga tu lista funkcji krytycznych, a nie ogólne porównanie technologii.
Czy PWA działa na iPhonie i czy ma powiadomienia push?
Działa, a powiadomienia push są dostępne od iOS 16.4 (marzec 2023). Jest jeden twardy warunek: aplikacja musi zostać dodana do ekranu początkowego przez Safari, menu Udostępnij i opcję Dodaj do ekranu początkowego. W zwykłej karcie przeglądarki Push API nie jest dostępne, więc użytkownik, który tylko otworzy stronę, powiadomień nie dostanie.
Czy Apple usunęło aplikacje webowe w Unii Europejskiej?
Nie. 1 marca 2024 Apple wycofało się z zapowiedzianego usunięcia aplikacji webowych z ekranu początkowego w Unii Europejskiej. Funkcja pozostała w iOS 17.4 i działa dalej, nadal oparta na silniku WebKit. Twierdzenie, że aplikacje webowe zostały w Unii wyłączone, jest nieprawdziwe.
Czego PWA nie zrobi na iOS w porównaniu z Androidem?
Na iOS aplikacja webowa ma węższy dostęp do sprzętu, ciaśniejsze limity pamięci offline i ograniczone przetwarzanie w tle — brakuje między innymi mechanizmu Background Sync, który na Androidzie dosyła dane po odzyskaniu połączenia. Powiadomienia wymagają wcześniejszego dodania aplikacji do ekranu początkowego. To są różnice, które trzeba sprawdzić przed decyzją, a nie po wdrożeniu.
Co technicznie musi mieć strona, żeby była PWA?
Techniczne minimum PWA to trzy rzeczy: service worker, czyli skrypt pośredniczący między aplikacją a siecią, plik manifestu opisujący nazwę, ikony i tryb wyświetlania oraz połączenie HTTPS. Bez HTTPS service worker się nie zarejestruje. Wszystko poza tym minimum — powiadomienia, tryb offline, dostęp do aparatu — jest opcjonalne i zależy od systemu operacyjnego.

Źródła i metodologia

Linki prowadzą do źródeł pierwotnych oraz zasad, według których przygotowujemy i aktualizujemy materiały.

  • WebKit — Web Push for web apps on iOS and iPadOS↗dostęp: 2026-08-14
  • MDN — Progressive web apps↗dostęp: 2026-08-14
  • Zasady redakcyjne GESEL.IO↗

Czytaj także

  • Aplikacja webowa czy mobilna: jak wybrać po miejscu użycia

    Aplikacja webowa czy mobilna? Rozstrzyga miejsce użycia i to, co zaprojektujesz dziś w architekturze, żeby dołożyć wersję mobilną bez przepisywania backendu.

  • Jak stworzyć aplikację mobilną: proces krok po kroku dla zamawiającego

    Jak stworzyć aplikację mobilną krok po kroku: co dostarczasz na wejściu każdego etapu, kto decyduje, jaki artefakt wychodzi i co dzieje się po publikacji w sklepach.

  • Core Web Vitals: LCP, INP i CLS — jak je zmierzyć i poprawić

    Core Web Vitals to LCP, INP i CLS. Sprawdź progi, różnicę między danymi polowymi a laboratoryjnymi i ścieżkę diagnostyczną dla każdej z trzech metryk.

GESEL.IO
Strony internetowePozycjonowanieAplikacjeStrona dla nowej firmyPoradnik
Zasady redakcyjnePolityka prywatnościRegulamin serwisuWsparcie

GESEL.IO sp. z o.o., ul. Jagiellońska 5/22, 58-100 Świdnica, Polska

Sąd Rejonowy dla Wrocławia-Fabrycznej we Wrocławiu, IX Wydział Gospodarczy KRS, KRS 0001258062, NIP 8842841661, REGON 545371616, kapitał zakładowy: 5 000,00 zł.

© 2026 GESEL.IO sp. z o.o.