Rodzaje aplikacji mobilnych

Istnieją trzy główne typy aplikacji mobilnych:

  • Natywne
  • Przeglądarkowe
  • Hybrydowe

Każdy z tych typów aplikacji ma swoje zalety i wady, co wymaga podjęcia decyzji biznesowej przed rozpoczęciem ich tworzenia.


Aplikacje natywne są rozwijane za pomocą specyficznych dla platformy zestawów SDK (Software Development Kits), narzędzi deweloperskich oraz specyficznych dla platformy czujników i funkcji. Są one pobierane, instalowane i aktualizowane ze sklepów dostawców. Te aplikacje mogą wymagać testowania na wszystkich obsługiwanych urządzeniach.


Aplikacje natywne zazwyczaj oferują lepszą wydajność, mogą w pełni wykorzystać funkcje platformy i spełniają oczekiwania dla platformy, na której są rozwijane. Koszt ich tworzenia jest zazwyczaj wyższy, a dodatkowe wyzwania mogą obejmować konieczność wsparcia wielu platform oraz instalację i testowanie na dużej liczbie urządzeń.


Aplikacje przeglądarkowe są dostępne przez przeglądarkę mobilną. Ponieważ korzystają z typowych technologii webowych i przeglądarek, łatwo jest je wspierać na wielu platformach, a koszt tworzenia jest zazwyczaj niższy.


Istnieją cztery główne sposoby tworzenia mobilnych aplikacji webowych:

  • Specyficzne dla urządzeń mobilnych wersje stron i aplikacji (znane również jako strony m(dot)). Zazwyczaj oznacza to, że gdy mobilna przeglądarka otwiera aplikację, jest dostarczana wersja mobilna. Na przykład, facebook.com przekierowuje na m.facebook.com, gdy jest otwierany z urządzenia mobilnego.
  • Aplikacje responsywne, które dostosowują się do formatu i rozmiaru ekranu, zwykle wyrażone jako "viewports".
  • Aplikacje adaptacyjne, które dostosowują projekt do określonych rozmiarów. Dla tych rozmiarów istnieją różne projekty, a funkcje dostępne dla użytkownika są często dostosowywane.
  • Aplikacje progresywne, które umożliwiają tworzenie skrótów do konkretnych stron internetowych na ekranie głównym urządzenia mobilnego. Wyglądają jak natywne aplikacje i czasami mogą działać nawet offline.

Mobilne aplikacje webowe są tworzone z użyciem powszechnych technologii webowych, co zazwyczaj sprawia, że są łatwiejsze do rozwijania i zarządzania w porównaniu do aplikacji natywnych i hybrydowych. Mogą jednak nie być tak bogate w funkcje jak aplikacje natywne lub hybrydowe i mogą mieć ograniczony dostęp do natywnych interfejsów API platformy. Dostęp do czujników mobilnych jest również ograniczony. Testowanie instalacji na urządzeniach nie jest potrzebne, ale wymagane jest testowanie kompatybilności z przeglądarkami.


Aplikacje hybrydowe są połączeniem aplikacji natywnej i webowej. Używają natywnej powłoki aplikacji, która zawiera widok webowy do uruchamiania aplikacji webowej wewnątrz aplikacji natywnej. Te aplikacje są pobierane ze sklepów dostawców i mogą uzyskać dostęp do wszystkich funkcji urządzenia. Są stosunkowo łatwe do rozwijania, aktualizacji i utrzymania bez potrzeby aktualizacji aplikacji zainstalowanej na urządzeniu. Umiejętności wymagane do tworzenia tych aplikacji są niemal takie same jak do tworzenia aplikacji webowych. Możliwe słabe punkty tych aplikacji to problemy z wydajnością spowodowane użyciem powłoki oraz możliwe rozbieżności w wyglądzie i funkcjonalności ze względu na specyficzne dla platformy aspekty.


Aplikacje natywne i hybrydowe są instalowane fizycznie na urządzeniu i dlatego zawsze są dostępne dla użytkownika, nawet gdy urządzenie nie ma połączenia z internetem. W porównaniu z nimi, aplikacje przeglądarkowe wymagają dostępu do internetu.


Niektóre aplikacje są wstępnie zainstalowane na urządzeniu mobilnym, a inne mogą być instalowane za pośrednictwem różnych kanałów dystrybucji, takich jak Apple App Store, Google Play Store, firmowe sklepy z aplikacjami (dostępne tylko w sieci firmowej) oraz zewnętrzne rynki aplikacji.


Testowanie każdego z tych typów aplikacji może wymagać innego podejścia. Parametry, które należy wziąć pod uwagę, to:

  • Różne typy urządzeń, które mają być obsługiwane.
  • Czujniki i funkcje urządzeń, które mają być używane.
  • Dostępność w różnych warunkach sieciowych.
  • Instalowalność, kompatybilność, efektywność działania i użyteczność.