Tworzenie aplikacji na Androida
— przewodnik biznesowy 2022

Dla prezesów startupów, przedsiębiorców i product ownerów

Wstęp. Dlaczego Android?

W tym pogłębionym przewodniku proponujemy Ci świeże spojrzenie na Androida. To dość szybko rozwijająca się platforma. Nowa wersja wychodzi niemal co roku, przynosząc nowe funkcje dla użytkowników i rozmaite smaczki dla programistów. 

Dzięki temu Twoja praca nigdy nie zamieni się w rutynowe utrzymywanie stabilnej wersji. Zawsze pojawi się coś nowego. Zawsze będzie dokąd iść. Niedawno na przykład Google ogłosiło Kotlina oficjalnym językiem programowania na Androida. 

Smartfony i inne urządzenia mobilne stały się czymś więcej niż tylko elementem codzienności. Przy pomocy telefonów nie tylko się komunikujemy, ale też zamawiamy towary w sklepach, kupujemy bilety, rezerwujemy noclegi, wzywamy taksówki, korzystamy z nawigacji, robimy zdjęcia i filmy oraz mamy dostęp do czytelni, banków internetowych i sposobów na rozrywkę i zabicie czasu.

Według statystyk opublikowanych przez Datareportal 67% dorosłych na świecie codziennie korzysta ze smartfonów, czyli niemal 5,19 miliarda osób (z 7,75 miliarda ludności ogółem). Przechodzenie z prostych urządzeń mobilnych na wielofunkcyjne smartfony z roku na rok tylko przyspiesza.

Wydawałoby się, że trudno wymyślić coś nowego, ale dobra realizacja w połączeniu z dobrym marketingiem potrafi przynieść twórcy duże pieniądze. Wyraźnie potwierdza to niedawna sensacja, TikTok, którego wyniki wciąż rosną w błyskawicznym tempie.

Dla kogo jest ten przewodnik?

Ten przewodnik nie dotyczy programowania na Androida i nie jest skierowany do programistów. To kompletny zbiór informacji dla osób z biznesu, które chcą zrozumieć tworzenie aplikacji na Androida oraz jego biznesowe konsekwencje, możliwości i perspektywy.

Osoby rozwijające biznes i prezesi startupów mogą znaleźć ciekawe rozwiązania dla swoich obecnych projektów albo zainspirować się do stworzenia nowych.

Product ownerzy produktów mobilnych mogą potraktować ten przewodnik po Androidzie jako podręcznik rozwijania swoich projektów.

Marketing managerowie / brand managerowie w dużych firmach, którzy potrzebują aplikacji do promocji i sprzedaży produktu.

Przedsiębiorcy cyfrowi, którzy potrzebują świeżych pomysłów na nie do odrzucenia, interaktywną prezentację biznesową, żeby inwestorzy uwierzyli w ich projekt.

Kimkolwiek jesteś, możesz mieć pewność, że ten przewodnik zostanie Ci w głowie. Nawet doświadczona osoba z biznesu znajdzie tu coś do przemyślenia!

Czego dowiesz się z tego przewodnika?

Dodaj ten przewodnik do zakładek, żeby wracać do niego, ilekroć potrzebujesz pomysłów. Najważniejsze rzeczy, które chcemy Ci przekazać, to:

  1. Co sprawia, że tworzenie aplikacji na Androida to najlepszy wybór i dlaczego co roku sięgają po nie tysiące firm.

  2. Jakie niesamowite rzeczy da się zrobić na Androidzie, a jakich nie.

  3. Jakie masz opcje tworzenia aplikacji na Androida.

  4. Co obejmuje proces wytwarzania i o czym pamiętać przy zatrudnianiu programistów Android.

  5. Gdzie zatrudnić najlepszy zespół Android do swojego kolejnego projektu.

Chcesz zacząć, ale nie możesz przeczytać przewodnika online? Pobierz wersję PDF tej strony.

Klikając „Pobierz e-booka”, wyrażasz zgodę na przetwarzanie Twoich danych przez Ideamotive Sp. z o. o. w celach marketingowych, w tym e-mail marketingu.

kamil_osiecki 1 (1)
Kamil Osiecki COO w Ideamotive



Myślisz o zbudowaniu aplikacji na Androida?

Porozmawiaj z naszym doradcą technologicznym. Zbadamy Twoje wymagania, przygotujemy roadmapę produktu i skompletujemy zespół programistów z najwyższej półki.

Spis treści

      00 Android w 2022 roku [INFOGRAFIKA]

      Android pillar infographic 2022

       

      01 Czym jest Android?

      Android to darmowy system operacyjny działający na smartfonach, tabletach, konsolach do gier, zegarkach, telewizorach, odtwarzaczach multimedialnych, czytnikach e-booków i okularach Google.

      Producenci nowoczesnych urządzeń często zastępują standardowe elementy systemu własnymi aplikacjami, inaczej grupują pozycje menu i zmieniają ich nazwy. Istota działania systemu w większości autorskich nakładek jest jednak identyczna.

      Historia Androida

      System Android stworzył Andy Rubin. 

      W 2005 roku Rubinowi skończyły się pieniądze, więc zwrócił się do wielu firm i zdołał przyciągnąć uwagę ludzi z Google. 11 lipca 2005 roku Google kupiło jego firmę, a twórcy Androida, w tym Rubin, zaczęli pracować nad systemem pod skrzydłami Google.

      System operacyjny Android został wydany 23 września 2008 roku. 

      Android jest dziś zainstalowany na ponad 3 miliardach urządzeń na całym świecie.

      (Źródło)

      W 2007 roku rządził iPhone. Dopiero premiera Motoroli Droid, technicznie mocniejszej i bardziej funkcjonalnej od iPhone'a, pozwoliła Google nieco zmienić tę sytuację. 

      Androida zaczęto traktować poważnie w 2009 roku — zaczęto widzieć w nim głównego konkurenta smartfonów Apple'a. I gdyby nie dystrybucja systemu jako otwartego OS-u, raczej nie zajmowałby dziś 80% rynku.

      W jakich językach programowania tworzy się aplikacje na Androida?

      Aplikacje na Androida możesz tworzyć w następujących językach:

      1. Java: Java jest oficjalnym językiem programowania platformy Android i jest obsługiwana przez Android Studio. 
      2. Kotlin: to drugi oficjalny język programowania platformy Android.
      3. C/C++: Android Studio obsługuje język C++, ale tylko w połączeniu z Android NDK.
      4. C#: To wygodniejsza i przyjaźniejsza dla początkujących alternatywa dla C i C++. Kod w C# bywa prostszy i bardziej zwięzły. Język ten obsługują narzędzia takie jak Unity i Xamarin, świetne do tworzenia gier i aplikacji wieloplatformowych.
      5. Python. To dość nietypowy wybór, ale istnieją otwartoźródłowe biblioteki Pythona, takie jak Kivy, których można użyć do tworzenia aplikacji mobilnych.
      6. React Native + JavaScript/TypeScript. Zgrabne i przyjazne programistom rozwiązanie wieloplatformowe stworzone przez samego Facebooka.
      7. Flutter + Dart. Flutter to zestaw narzędzi programistycznych, który korzysta z języka Dart i pozwala budować rozbudowane wieloplatformowe aplikacje mobilne.
      8. Cordova. Rozwiązanie do tworzenia aplikacji hybrydowych, które pozwala projektować, kompilować i wdrażać bardzo funkcjonalne aplikacje mobilne.
      9. NativeScript. Aplikacje w NativeScripcie buduje się w JavaScripcie albo w dowolnym języku kompilowanym do JavaScriptu, takim jak TypeScript.
      10. Ionic. Jeden z mocnych zestawów SDK opartych na HTML5, pozwalający tworzyć naturalnie działające aplikacje mobilne przy użyciu technologii takich jak HTML, CSS i JavaScript.


      Szczegółowe porównanie tych technologii znajdziesz w rozdziale 4.

      Do czego wykorzystuje się Androida

      Dziś Android to coś więcej niż system operacyjny do smartfonów. Tę technologię widzimy też w innych urządzeniach:

      Android pillar - Infographic 1

      Android to bardzo elastyczny system operacyjny. Łatwo dostosować go do własnych potrzeb, a mnogość aplikacji pozwala dodać nowe funkcje albo zastąpić te podstawowe. 

      Nie podoba Ci się standardowa aplikacja do dzwonienia? Nie szkodzi — pobierz inną, podmień skróty na ekranie głównym i korzystaj z nowej. 

      Nie podoba Ci się wbudowany odtwarzacz muzyki? Bez problemu pobierzesz inny z Play Store. 

      Chcesz bardziej szczegółowego wyjaśnienia? Przejdź do rozdziału 3!

      Wersje Androida

      Oto lista wszystkich wersji Androida:

      • Android 1 "Apple Pie"
      • Android 2.3 Gingerbread (wydany w 2010)
      • Android 4.0 Ice Cream Sandwich (wydany w 2011)
      • Android 4.1 Jelly Bean (wydany w 2012)
      • Android 4.2 (wydany w 2012)
      • Android 4.3 (wydany w 2013)
      • Android 4.4 KitKat (data wydania: 2013)
      • Android 5.0 Lollipop (wydany w 2014)
      • Android 5.1 (wydany w 2015)
      • Android 6.0 Marshmallow (wydany w 2016)
      • Android 7.0 Nougat (wydany w 2016)
      • Android 7.1 (wydany w 2016)
      • Android 8.0 Oreo (data wydania: 2017)
      • Android 8.1 (data wydania: 2017)
      • Android 9.0 Pie (wydany w 2018)
      • Android 10 (data wydania: 2019)
      • Android 11 (data wydania: 2020)

      Więcej o aktualnej wersji Androida przeczytasz w tym rozdziale.

      02 Android a iOS

      Cokolwiek wybierasz, warto mieć co najmniej dwie alternatywy do porównania. Przy wyborze technologii do tworzenia aplikacji jest tak samo.

      Obecnie w smartfonach powszechnie używa się tylko dwóch systemów operacyjnych — Androida i iOS-a.  Korzysta z nich około 99 procent wszystkich sprzedawanych urządzeń mobilnych.

      Ale który system jest lepszy?

      Nie da się na to pytanie odpowiedzieć kategorycznie, bo wygoda korzystania z urządzenia to indywidualne odczucie, a każdy ma własne wymagania wobec oprogramowania i interfejsu.

      Żeby dokonać właściwego wyboru, trzeba więc wziąć pod uwagę wszystko — zarówno swoje oczekiwania wobec aplikacji mobilnej, jak i możliwości dostępnego oprogramowania.

      Zawsze możesz też (jak wielu) tworzyć aplikację jednocześnie na iOS i Androida, korzystając z technologii wieloplatformowych. Szczegółowo omawiamy to w tym rozdziale.

      Czym jest iOS?

      iOS to mobilny system operacyjny stworzony i rozwijany przez Apple wyłącznie na własne urządzenia.

      iOS działa na iPhonie i iPodzie Touch. Wcześniej był instalowany także na iPadzie, zanim w 2019 roku pojawił się iPadOS. To drugi najpopularniejszy mobilny system operacyjny, zaraz po Androidzie.

      iOS zaprezentowano publicznie 29 czerwca 2007 roku wraz z pierwszym iPhone'em, a następnie przeniesiono go na iPoda Touch i iPada. 

      iOS pozwala instalować aplikacje firm trzecich, które umożliwiają wykonywanie wielu różnych zadań i rozszerzają możliwości urządzenia. Obecnie w oficjalnym App Store dostępne są ponad dwa miliony aplikacji i gier.

      Czym iOS różni się od Androida?

      Jakie są główne różnice między Androidem a iOS-em?

      Android a iOS: interfejs

      To jeden z najważniejszych aspektów, bo na ekrany smartfonów patrzymy sto razy dziennie. Niektórzy uważają, że większość smartfonów z Androidem kopiuje interfejs iOS-a, ale Android daje więcej możliwości personalizacji launchera.

      Na smartfonach z Androidem dostępne są różne motywy (z różnymi ikonami), tapety animowane itd. Największą różnicą są jednak widżety. Pokazują w czasie rzeczywistym informacje o pogodzie, promocjach, wiadomościach, Twoich planach itd. W Androidzie widżety można dodać bezpośrednio na główny ekran.

      Na iOS widżety pojawiły się znacznie później i są dostępne na osobnym ekranie. Uważamy, że to raczej niewygodne, a widżety od dawna wymagają unowocześnienia.

      Interfejs w obu systemach jest w dużej mierze taki sam. Na Androidzie wprowadzanie zmian i instalowanie nakładek nie stanowi jednak problemu, podczas gdy na iOS zmiany są ograniczone — bywają bardzo powierzchowne, wręcz kosmetyczne, a użytkownik może wybierać wyłącznie spośród gotowych szablonów.

      Trzeba tu jednak uczciwie zauważyć, że zarówno design, jak i interfejs systemu Apple'a są doskonale zoptymalizowane i naprawdę bardzo wygodne, więc takie ograniczenia w personalizacji urządzenia nie są dla użytkownika istotnym problemem.

      Android a iOS: szybkość, koszt i łatwość tworzenia

      Tworzenie na iOS jest szybsze, łatwiejsze i tańsze — według niektórych szacunków czas tworzenia na Androida jest o 30–40 procent dłuższy.

      Jednym z powodów, dla których tworzenie na iOS jest łatwiejsze, jest kod. Aplikacje na Androida pisze się zwykle w Javie — języku wymagającym napisania większej ilości kodu niż Swift, oficjalny język programowania Apple'a.

      Drugim powodem jest to, że Android to platforma otwartoźródłowa. Brak standaryzacji oznacza, że trzeba uwzględnić więcej urządzeń, więcej komponentów i fragmentację oprogramowania.

      Zamknięty ekosystem Apple'a oznacza, że tworzysz na kilka ustandaryzowanych urządzeń i systemów operacyjnych.

      Z drugiej strony App Store Apple'a ma surowsze wytyczne i wymagania jakościowe oraz dłuższy proces weryfikacji. Zatwierdzenie aplikacji może więc potrwać dłużej. Twoja aplikacja może nawet zostać odrzucona, jeśli nie spełni standardów Apple'a.Android pillar - Table 1

      Android a iOS: szybkość działania

      iOS jest szybszy. Wynika to z tego, że aplikacje na Androida korzystają ze środowiska uruchomieniowego Javy. iOS od początku projektowano tak, by efektywnie gospodarował pamięcią i unikał tego rodzaju odśmiecania. Dlatego produkt na iOS może działać szybciej przy mniejszej ilości pamięci i zapewniać czas pracy na baterii porównywalny z wieloma telefonami z Androidem o znacznie większych akumulatorach.

      Android a iOS: stabilność

      Stabilność i płynność systemu to pierwsze, co zauważa większość użytkowników. Dzięki optymalizacji, przemyślanemu interfejsowi i tym samym komponentom technicznym w kolejnych urządzeniach system Apple'a prowadzi w tej kategorii.

      Różnorodność urządzeń z Androidem i odmienne oprogramowanie graficzne negatywnie wpływają na płynność systemu. Co więcej, Google nie obiecuje stabilności w przypadku modyfikacji wprowadzanych przez producentów zewnętrznych: mają one luki i często się zawieszają, co zmusza do restartu urządzenia.

      Dotyczy to również sprzętu: producenci używają różnych podzespołów, a części z nich Google oficjalnie nie wspiera.

      Z iOS-em jest lepiej: jeśli pojawiają się problemy z podzespołami urządzenia, winny jest sprzęt, a nie system. Firma szybko wymieni Twoje urządzenie na nowe.

      iOS a Android: bezpieczeństwo

      Porównując iOS i Androida pod kątem prywatności i bezpieczeństwa, trzeba powiedzieć, że w niektórych kręgach iOS Apple'a od dawna uchodzi za bezpieczniejszy z tych dwóch systemów. Dlaczego? System operacyjny Apple'a jest zamknięty. Apple nie udostępnia kodu źródłowego twórcom aplikacji, a właściciele iPhone'ów i iPadów nie mogą sami zmieniać kodu na swoich urządzeniach. To utrudnia hakerom znajdowanie luk w urządzeniach z iOS.

      W urządzeniach z Androidem jest odwrotnie: korzystają z otwartego kodu, co oznacza, że właściciele mogą przy systemie majstrować. Zbyt dużo grzebania i sami tworzą luki bezpieczeństwa w swoich urządzeniach. Do tego dochodzą producenci. Jeśli producent telefonu wypuści nowe urządzenie z modyfikacją systemu Android, a w tym kodzie będzie luka, hakerzy ją znajdą.

      Android częściej bywa też celem hakerów, bo system ten działa na ogromnej liczbie urządzeń mobilnych. Globalna popularność Androida czyni go atrakcyjniejszym celem dla cyberprzestępców. Urządzenia z Androidem są więc bardziej narażone na zainfekowanie złośliwym oprogramowaniem i wirusami.

      To jeszcze nie wszystko. Choć iOS można uznać za bezpieczniejszy, atak cyberprzestępców na iPhone'y czy iPady nie jest niemożliwy. Właściciele urządzeń z Androidem i iOS-em powinni pamiętać o zagrożeniu złośliwym oprogramowaniem i wirusami. Powinni uważać przy pobieraniu aplikacji z zewnętrznych sklepów. Najbezpieczniej pobierać je z zaufanych źródeł, takich jak Google Play i App Store Apple'a, które sprawdzają oferowane aplikacje.

      Do tego dochodzą ataki socjotechniczne, w których cyberprzestępcy próbują podstępem wyłudzić dane logowania, dostęp do kont bankowych i inne informacje osobowe. Nie ma znaczenia, z jakiego systemu mobilnego korzystasz: zarówno iOS, jak i Android mogą być tak samo podatne na tego typu ataki phishingowe.Android pillar - Chart 1

      Na globalnym rynku mobilnym system Android dominuje nad konkurencją. Według Statista w 2019 roku Android odpowiadał za 87% rynku globalnego, a iOS Apple'a jedynie za 13%. Oczekuje się, że w kolejnych latach ta różnica będzie rosnąć.

      Nawet przy tak niskim udziale w rynku globalnym iOS zdołał zdominować kilka kluczowych krajów. StatCounter pokazują, że iPhone ma ponad 60% udziału w rynku w Japonii i ponad 50% w Stanach Zjednoczonych. W Kanadzie proporcje są bliższe 50 na 50.

      Niestety dla Apple'a to jedyne kraje, w których jego system jest popularniejszy niż Android. System Google jest częstszy w Wielkiej Brytanii, Niemczech, Chinach i wielu innych krajach. W Brazylii, Nigerii i Indiach iPhone ma mniej niż 20 procent rynku.

      Ważnym czynnikiem jest cena. iPhone to produkt z najwyższej półki z wysoką ceną, którą wielu odbiorców w gospodarkach wschodzących odrzuca, porównując go z urządzeniami z Androidem ze średniej półki. Na przykład wysokie cła importowe w Indiach windują koszt urządzeń z iOS znacznie powyżej tego, co rynek był gotów zapłacić. W efekcie rynek indyjski to dziś w 97 procentach Android.

      Apple chce jednak namieszać na rynkach takich jak Indie dzięki nowej fabryce w Chennai, która pozwoli firmie konkurować z tanimi urządzeniami z Androidem. Apple pokazał też zainteresowanie średnią półką, wypuszczając nowego iPhone'a SE. W najbliższej przyszłości dominacja Androida może więc zostać podważona przez iOS.

      Funkcje obecne na obu platformach

      Oto niektóre podobieństwa między iOS-em a Androidem:

      • Podstawowa funkcjonalność iOS-a i Androida jest podobna. Telefony z oboma systemami oferują połączenia, wiadomości, przeglądanie internetu, wideorozmowy, asystentów AI, mapy, komendy głosowe, płatności mobilne i wiele więcej.
      • Interfejsy użytkownika iOS-a i Androida są pod wieloma względami podobne. Oba obsługują przesuwanie, dotyk, zmniejszanie, powiększanie i inne gesty na ekranie telefonu.
      • Urządzenia z iOS i Androidem mają pasek stanu z podobnymi informacjami: poziomem baterii, godziną, powiadomieniami aplikacji, statusem Wi-Fi itd.
      • Sieci komórkowej 4G (a w niektórych telefonach 5G) można używać zarówno na urządzeniach z iOS, jak i z Androidem. To bardzo ważne, bo sieć komórkowa jest kluczowa dla korzystania z internetu.Android pillar - Table 2

      Android a iOS: zalety i wady

      Żeby łatwiej było Ci zrozumieć cechy tych dwóch systemów, zebraliśmy główne zalety i wady iOS-a i Androida w dwóch tabelach. Zacznijmy od analizy cech systemu Android:

      Android pillar - Infographic 2

      Co wybrać? Najlepiej oba. Jeśli to niemożliwe, postaw na Androida, bo można w nim dostosować wszystko — od sposobu wyświetlania menu po sterowanie aplikacją — a także dodać własne funkcje i ustawienia.

      Android to wybór dla użytkowników, którzy cenią maksymalną swobodę i chcą elastycznych ustawień. To także opcja dla tych, którzy szukają dobrych, ale niedrogich rozwiązań.

      03 Dlaczego Android? Do czego się go używa?

      System Android powstał pierwotnie dla wąskiej klasy urządzeń — smartfonów. Pierwsze „laboratoryjne” wersje tego systemu nie obsługiwały nawet ekranów dotykowych. Dziś Androida znajdziemy jednak w dowolnym urządzeniu, nawet w sprzęcie AGD.

      Gdzie używa się Androida?

      To, że pierwsza wersja Androida nie obsługiwała ekranów dotykowych, nie dziwi: w połowie 2006 roku do premiery iPhone'a zostało jeszcze kilka miesięcy. Po tym, jak Steve Jobs zaprezentował swoje rewolucyjne urządzenie, Google mocno przebudowało nowy system — Android zyskał obsługę ekranów dotykowych i zupełnie inny interfejs.

      Dalsza ewolucja platformy sprawiła, że przestała być wyłącznie „smartfonowym” systemem operacyjnym. Android działa dziś na bardzo różnych urządzeniach, a ich liczba będzie zapewne rosnąć.

      Oto krótka lista urządzeń konsumenckich, w których używa się Androida.

      Aplikacje mobilne

      Wymienianie konkretnych modeli nie miałoby sensu. Dziś niemal każdy producent ma smartfony i tablety oparte na Androidzie.

      Jeśli tablet nie jest iPadem, to prawdopodobnie działa na Androidzie. (Są też modele oparte na Windowsie, ale ich udział w rynku jest znikomy — ledwie przekracza pół procenta). 

      Pamiętaj, że mobilne urządzenia z Androidem są w praktyce jedyną alternatywą dla iOS-a Apple'a.

      Urządzenia smart i wearables

      Multimedialne czytniki książek

      Wydawać by się mogło, że między czytnikami opartymi na Androidzie a tabletami nie ma dużej różnicy, ale czytniki na tej platformie mają zwykle zaawansowane oprogramowanie do czytania książek i często są wyposażone w specjalne przyciski sprzętowe do przewracania stron. Zazwyczaj nie mają też odbiorników GPS ani modułów sieci komórkowej.

      Zwróć uwagę, że takie urządzenia produkują dwaj światowi liderzy rynku czytników e-booków — amerykańskie firmy Amazon i Barnes & Noble.

      Co Android daje multimedialnemu czytnikowi? Użytkownik dostaje urządzenie dwa w jednym: wygodny sprzęt do czytania e-booków i tablet z możliwością instalowania programów i gier firm trzecich.

      Wearables

      Android „zamieszkał” nawet w zegarku na rękę. Jednym z pierwszych takich urządzeń był SmartWatch Sony, oferowany jako akcesorium do smartfonów z tym samym systemem (ekran zegarka może pokazywać przychodzące SMS-y, połączenia, część aplikacji i tak dalej).

      Włoska marka I'm Watch ma całą linię zegarków z Androidem — ponad dziesięć modeli w różnych wykończeniach, w tym ze skóry i metali szlachetnych.

      Zegarek z Androidem to całkiem ciekawy dodatek do smartfona lub tabletu, bo nie trzeba wyjmować „głównego” urządzenia z kieszeni czy torby, żeby przeczytać e-mail albo wiadomość.

      Przenośne konsole do gier

      Pierwszą konsolą do gier z Androidem był ODROID, wydany kilka lat temu. Nieistniejąca już firma Sony Ericsson wypuściła kiedyś smartfon XPERIA Play, będący hybrydą telefonu i konsoli.

      Dlaczego konsole z Androidem? To proste: na tę platformę napisano tysiące gier. Dostępne są też emulatory wielu konsol poprzednich generacji.

      Kieszonkowe odtwarzacze multimedialne

      Urządzenia tej klasy „wymarły” kilka lat temu przez popularność smartfonów, ale dziś, dzięki Androidowi, dostały drugie życie.

      Netbooki

      Niektóre wersje netbooka Acer Aspire One miały dwa systemy operacyjne — Windows 7 i Android 2.1. Niewiele było jednak powodów, by używać Androida, bo jest zoptymalizowany pod ekrany dotykowe, których ten netbook nie miał. Faktem pozostaje jednak, że Android pojawił się w tej klasie urządzeń, choć to wyraźnie nie jego teren.

      Android TV

      W listopadzie 2014 roku Google wspólnie z Asusem wypuściło pierwszą multimedialną przystawkę Android TV.

      Czym jest ten system i po co jest potrzebny? Android TV potrafi zamienić zwykły telewizor, odbierający tylko programy nadawane na żywo, w centrum multimedialne o ogromnych możliwościach. System ma na starcie wszystkie standardowe funkcje, w tym typowe ustawienia odbioru i jakości obrazu, wybór źródeł materiałów wideo itd. Jednocześnie to w gruncie rzeczy znajomy system operacyjny z tymi samymi zaletami i wadami co Android: dostępem do folderów, znaną procedurą instalacji aplikacji i zgodnością z urządzeniami obsługującymi ten system. Dzięki temu można zainstalować znacznie więcej aplikacji niż w jakimkolwiek innym Smart TV.

      Dziś Android TV znajdziemy w telewizorach kilku producentów. Jeden z liderów w tym obszarze, Sony, oferuje szeroki wybór modeli opartych na Android TV w różnych przekątnych — od 43 do 100 cali. Poza Sony aktywnie korzystają z Android TV także Sharp i Philips.

      W teorii Android TV to kolejny krok w rozwoju Smart TV, ale w rzeczywistości mówimy o zupełnie innej platformie. Z punktu widzenia zaawansowanego użytkownika tradycyjny Smart TV to komputer, na którym można instalować programy i aplikacje tylko jednego producenta. To wyraźnie za mało. System nadaje się jedynie dla mało wymagających internautów i dla tych, którzy chcą nieco poszerzyć możliwości zwykłego telewizora, zwiększając liczbę dostępnych treści. 

      Android Auto 

      Android Auto to samochodowy system infotainment od Google — technologia, która nie tylko łączy audio i obraz między autem a aplikacjami w smartfonie, ale wyprzedza dziś Apple CarPlay. Po podłączeniu telefonu do jednostki centralnej samochodu zobaczysz na ekranie infotainmentu uproszczoną wersję swojego telefonu. Dzięki temu korzystanie z telefonu podczas jazdy jest łatwiejsze i bezpieczniejsze, a dostęp do aplikacji i funkcji, takich jak Mapy Google, muzyka, połączenia i SMS-y, szybszy.

      Android Auto nie jest dostępny we wszystkich nowych samochodach (podobnie jak Apple CarPlay), ale — tak jak oprogramowanie w telefonach z Androidem — stale się rozwija i jest aktualizowany. Co ciekawe, regularne aktualizacje to jedna z głównych zalet korzystania z Android Auto. 

      Ponieważ producenci samochodów działają w znacznie wolniejszym tempie niż producenci elektroniki użytkowej, wielu kierowców musi korzystać z przestarzałych systemów multimedialnych o ograniczonej funkcjonalności.

      Żeby korzystać z Android Auto, potrzebujesz smartfona z Androidem zaktualizowanym do wersji 5.0 Lollipop lub nowszej. Mając odpowiednią wersję, otrzymasz uproszczony interfejs użytkownika i zestaw zgodnych aplikacji.

      Android dla startupów

      Według tych statystyk użytkownicy spędzają nawet 86% czasu przy smartfonie w aplikacjach. Ponad 50% transakcji i zakupów online przechodzi przez aplikacje mobilne, a odsetek ten rośnie z roku na rok.

      Android pillar - Chart 2

      Wszystkie operacje — od zamówienia sushi po prowadzenie własnej firmy — wygodnie załatwia się przez smartfona. Dlatego lwia część odbiorców woli aplikacje mobilne od usług desktopowych. 

      Zmiany preferencji konsumentów napędzają szybki rozwój rynku oprogramowania na smartfony.

      Dlatego, żeby wystartować z mobilnym startupem, potrzebujesz ugruntowanego systemu takiego jak Android. 

      Android dla dużych firm

      Jest jeszcze jeden powód, by wybrać Androida. Wraz z Androidem 2.0 Google pokazało sposób zarządzania urządzeniami przez rozwiązanie MDM, w którym zarządzanie odbywa się przez nadanie aplikacji uprawnień do kontroli urządzenia (Device Admin).

      Przy dodawaniu urządzenia użytkownik jest proszony o „przekazanie” kontroli aplikacji Intune Company Portal.

      Działało to, ale konfiguracja urządzeń z Androidem zawsze była trudniejsza niż tych z iOS. Do tego powstawała luka bezpieczeństwa, bo takie uprawnienia — a więc pełny dostęp do systemu — mogła uzyskać dowolna aplikacja.

      Żeby rozwiązać te problemy, stworzono tryb Android for Work, dziś nazywany Android Enterprise.

      Obecnie Android Enterprise to zestaw metod i rozwiązań do zarządzania urządzeniami, w którym urządzenie kontrolowane jest przez API udostępniane przez samo Google. Innymi słowy, gdy wykonujesz akcję, Intune łączy się z serwerami Google, żeby wywołać dane urządzenie.

      Intune obsługuje obecnie następujące sposoby korzystania z Android Enterprise:

      Profil służbowy (Work Profile)

      Ten scenariusz sprawdzi się przy urządzeniach prywatnych, które chcesz dodać do Intune.

      Przy dodawaniu urządzenia do Intune zostaniesz poproszony o utworzenie nowego profilu służbowego, a wszystko, co Intune doda do urządzenia, trafi na poziom profilu, a nie całego urządzenia.

      Urządzenia w trybie kiosku lub COSU

      To tryb, w którym właścicielem urządzenia jest firma, a nie użytkownik. Nie tworzy się tu specjalnych profili służbowych, bo całe urządzenie jest powiązane z firmą.

      Można wtedy skonfigurować urządzenia o ograniczonej funkcjonalności do jednego lub kilku zadań. Na przykład tablet do systemu magazynowego albo telefon z ograniczonymi funkcjami dla pracownika terenowego.

      Tutaj zaczyna działać część magii wstępnej konfiguracji urządzenia, bo można ją wykonać, po prostu kierując aparat na odpowiedni kod QR. Potem wszystko zainstaluje się i skonfiguruje samo.

      Android ma tu kilka wad i ograniczeń. Nie da się na przykład sprawdzić statusu zgodności ani dostarczyć certyfikatów. 

      Właściciel urządzenia (Device Owner)

      Podobnie jak wcześniej, nie tworzy się tu profilu. Zamiast tego Twoja organizacja zostaje wskazana jako właściciel urządzenia. W odróżnieniu od trybu kiosku pozwala to jednak w pełni skonfigurować i mieć w pełni działające urządzenie. Ta metoda nadaje się do urządzeń firmowych. Niedawno funkcja ta przeszła z trybu „Preview” do „General Available” i w tym trybie działa już dostarczanie certyfikatów oraz polityk zgodności.

      Jak widać z listy opcji, zarządzanie urządzeniami w Android Enterprise opiera się na właścicielu urządzenia oraz profilu służbowym/prywatnym.

      04 Tworzenie na Androida: jakie masz opcje?

      Zdecydowałeś, że chcesz stworzyć aplikację na Androida. Świetnie! Niestety same chęci nie wystarczą. Nauka programowania bywa trudna. Czasem nie wiadomo nawet, od czego zacząć! Zanim więc ruszysz, prawdopodobnie będziesz musiał odpowiedzieć sobie na wiele pytań.

      Na szczęście możesz skonsultować się z naszymi Top Android Developers For Hire w sprawie tego, które IDE najlepiej sprawdza się przy tworzeniu na Androida. Śmiało się z nimi skontaktuj.

      Możesz też skorzystać z poniższych danych.

      Każde środowisko programistyczne zawiera cały zestaw narzędzi do pisania kodu, projektowania interfejsu, debugowania, profilowania (monitorowania) i budowania aplikacji. Zarówno środowisko, jak i odpowiadający mu zestaw narzędzi powstają specjalnie dla danego mobilnego systemu operacyjnego i są najwygodniejszymi oraz najpotężniejszymi narzędziami do tworzenia aplikacji mobilnych.

      Tworzenie natywne

      W natywnym tworzeniu na Androida programiści korzystają z oryginalnych języków programowania i narzędzi mobilnego systemu operacyjnego.

      Jeśli chcesz tworzyć aplikacje na Androida, pierwszym krokiem jest wybór języka. Różnice między poszczególnymi językami programowania na Androida bywają subtelne i nieco podchwytliwe.

      Ważniejsze od samego języka jest jednak narzędzie, z którym jest związany, oraz jego główne funkcje i zastosowania.

      Języki, których możesz się nauczyć na potrzeby Androida, to m.in. Java, Kotlin, C++ z NDK, C#/C i Python.

      W jakim więc języku tworzy się aplikacje na Androida?

      Java

      Kiedy przychodzi do tworzenia natywnej aplikacji na Androida, Java pozostaje jedną z dwóch oficjalnych opcji. Oznacza to duże wsparcie ze strony Google. Większość aplikacji spoza kategorii gier napisano prawdopodobnie w Javie albo Kotlinie.

      Podejście numer jeden do tworzenia aplikacji na Androida to pobranie Android Studio. To program zwany IDE, czyli zintegrowanym środowiskiem programistycznym. Jest dostarczany razem z Android SDK (zestawem narzędzi ułatwiających pracę z Androidem) i daje wszystko, czego potrzeba na start.

      Oficjalna dokumentacja Google dotyczy Android Studio i Javy (lub Kotlina), a w sieci znajdziesz mnóstwo wsparcia.

      Jak więc wykorzystuje się Javę przy tworzeniu aplikacji na Androida?

      Javę wydało Sun Microsystems już w 1995 roku i używa się jej w bardzo różnych zastosowaniach. Mimo wyraźnej preferencji Google wobec Kotlina Java jest tak zakorzeniona i znajoma, że wiele zespołów zdecydowało się przy niej zostać.

      Niestety Java jest też złożona i nie jest dobrym pierwszym językiem. Sprawa komplikuje się jeszcze bardziej, gdy dorzucisz do tego Android SDK. 

      Java to obiektowy język programowania. Ma mylące elementy, takie jak konstruktory, wyjątki kontrolowane, wyjątki null pointer i inne. Nie jest zbyt czytelna, a proste rzeczy wymagają dużej ilości kodu szablonowego.

      Nie znaczy to, że Java jest złym rozwiązaniem. Nazwanie jakiegokolwiek języka „złym” byłoby grzechem, a poza tym większość rzekomych wad Javy wychodzi nam na dobre i zachęca do pisania czystego kodu. Wielu ludzi właśnie za to Javę uwielbia. To także jeden z najbardziej wszechstronnych i najszerzej używanych języków. Według zestawienia PYPL (PopularitY of Programming Languages) Java jest jednym z najpopularniejszych języków programowania wśród pracodawców.

      Android Studio od kilku lat zyskuje na popularności. Funkcje takie jak wizualny kreator interfejsu i podpowiedzi usprawniają pracę, a stale dochodzą kolejne zaawansowane możliwości, dające programistom dostęp na przykład do łatwego w implementacji magazynu w chmurze. Warto z niego korzystać, nawet jeśli czasem naprawdę trudno nadążyć za tak szybkim rozwojem.

      Kotlin

      Kotlin od jakiegoś czasu jest oficjalnym językiem tworzenia na Androida, a Google poszło nawet dalej i uczyniło go językiem preferowanym. Ponieważ jednak wiele zespołów zainwestowało już mocno w Javę, spora część nie zdecydowała się na zmianę.

      Podobnie jak Java, Kotlin działa na wirtualnej maszynie Javy. Jest też w pełni z nią zgodny, nie spowalnia aplikacji ani nie zwiększa rozmiaru plików. Różnica polega na tym, że Kotlin wymaga mniej kodu szablonowego, więc jest zwięźlejszy i czytelniejszy. Eliminuje też błędy takie jak wyjątki null pointer, a nawet zwalnia z kończenia każdej linii średnikiem. Krótko mówiąc: świetnie sprawdza się, gdy dopiero uczysz się tworzyć aplikacje na Androida.

      Porównując Kotlina z Javą w kontekście Androida: ten pierwszy jest zdecydowanie łatwiejszym punktem wyjścia dla początkujących, a duży plus stanowi to, że nadal możesz korzystać z Android Studio. To wciąż jednak złożony język i wciąż trzeba ogarnąć sporo dodatkowych „rzeczy”, żeby w ten sposób stworzyć aplikację na Androida. Drobną wadą jest też to, że poza Androidem Kotlin jest mniej rozpowszechniony. Przy tworzeniu na Androida Kotlin pozostaje więc pierwszym wyborem.

      Kotlin najlepiej pasuje do Twojego projektu? Zatrudnij najlepszych programistów Kotlin!

      C/C++

      Uczciwie mówiąc, większość osób nie powinna wybierać tej drogi do tworzenia aplikacji na Androida. Android Studio obsługuje kod C / C ++ przy użyciu Android NDK (Native Development Kit). Oznacza to, że piszesz kod, który nie działa na wirtualnej maszynie Javy, tylko bezpośrednio na urządzeniu, dając Ci większą kontrolę nad takimi sprawami jak alokacja pamięci. Przy wymagających zastosowaniach, na przykład grach 3D, pozwala to wycisnąć z urządzenia z Androidem dodatkową wydajność. Oznacza też, że możesz korzystać z bibliotek napisanych w C lub C ++.

      Konfiguracja jest jednak znacznie trudniejsza. Programowanie aplikacji na Androida w C++ generuje więcej błędów i daje mniej elastyczności. A jeśli naprawdę chcesz stworzyć grę, lepiej sięgnąć po gotowy silnik, taki jak Unity.

      C#

      C# stworzył Microsoft, żeby połączyć moc C++ z prostotą Visual Basica. Jest bardzo podobny do Javy, więc jeśli znasz jeden z tych języków, względnie łatwo przesiądziesz się na drugi. 

      Podobnie jak Java na Androidzie, C# ma odśmiecanie pamięci, więc nie musisz martwić się wyciekami pamięci ani samodzielnym jej zwalnianiem. Jednocześnie C# jest nowocześniejszy od Javy i ma czystszą składnię — choć może jesteśmy stronniczy. 

      Najlepszy język do tworzenia aplikacji na Androida to często po prostu kwestia gustu! Zbudowanie aplikacji na Androida w C# jest więc sensowną opcją.

      Python

      Pythona można używać do tworzenia aplikacji na Androida, mimo że Android nie wspiera Pythona natywnie. Da się to zrobić przy użyciu różnych narzędzi, które zamieniają aplikacje w Pythonie na pakiety Androida uruchamiane na urządzeniach.

      Przykładem jest Kivy — otwartoźródłowa biblioteka Pythona używana do tworzenia aplikacji mobilnych. Obsługuje Androida i ułatwia szybkie tworzenie aplikacji (naszym zdaniem sytuacja win-win). Wadą Pythona na Androidzie jest jednak brak wbudowanych korzyści dla Kivy, bo nie jest ono wspierane natywnie.

      Potraktuj więc tworzenie aplikacji na Androida w Pythonie raczej jako ciekawą koncepcję niż realną opcję. 

      Tworzenie wieloplatformowe 

      Wieloplatformowe tworzenie aplikacji mobilnych zakłada użycie specjalnych frameworków do zbudowania aplikacji w oparciu o rodzinę języków JavaScript.

      Całą strukturę i logikę aplikacji tworzy się w JavaScripcie przy użyciu narzędzi takich jak React Native, Flutter, Ionic czy Xamarin, a następnie opakowuje w natywny element uruchamiający, czyli integruje z bazowym projektem dla Xcode albo Android Studio. Pozwala to budować wersje projektu o tej samej logice od razu na kilka systemów operacyjnych.

      W podejściu natywnym tę samą aplikację tworzy się osobno na iOS i osobno na Androida, a w podejściu wieloplatformowym wszystko powstaje za jednym razem.

      Aplikacja będzie działać na wszystkich platformach.

      Uważasz, że to opcja dla Ciebie? Zatrudnij naszych najlepszych programistów cross-platform, żeby wycisnąć z niej maksimum!

      React Native + JavaScript/TypeScript

      React Native pozwala budować własne aplikacje i wykorzystuje JavaScript jako język programowania.

      Siłą React Native jest to, że moduły możesz pisać w językach ​​takich jak C, Swift i Java.

      Najlepsze w tym narzędziu jest to, że możesz pracować nad edycją obrazu i przetwarzaniem wideo, co w innych frameworkach API nie jest możliwe.

      React Native jest bez wątpienia najlepszą platformą do tworzenia aplikacji wieloplatformowych, bo interpretuje kod źródłowy i szybciej zamienia go w natywne elementy. Zarówno Facebook, jak i Instagram wykorzystały RN do stworzenia swoich aplikacji, jednych z najczęściej używanych na świecie.

      Jak widzisz, React Native ma Ci coś do zaoferowania. Skorzystaj z wniosków znanych twórców aplikacji mobilnych razem z naszymi najlepszymi programistami React Native do wynajęcia

      Czytaj więcej:

      Xamarin + C#

      Microsoft Visual Studio Xamarin pozwala budować aplikacje na wiele platform — Windows, iOS i Android — z jednej bazy kodu w .NET.

      Najlepsze w wieloplatformowym Xamarinie jest to, że wszystkie zbudowane w nim aplikacje wyglądają i działają jak natywne — bo korzysta on z własnych interfejsów działających tak, jak użytkownik tego oczekuje.

      Dzięki Xamarinowi możesz dać aplikacji akcelerację sprzętową właściwą dla danej platformy i osiągnąć wydajność zbliżoną do natywnej. Do tego większość kodu (około 75%) będzie taka sama niezależnie od platformy, na którą tworzysz aplikację. Xamarin pracuje na jednej bazie kodu, rozpoznaje ją i przyspiesza tworzenie wieloplatformowych aplikacji mobilnych.

      Xamarin działa na Macu i na PC oraz oferuje narzędzia do debugowania, budowania interfejsu i edycji kodu.

      Flutter + Dart

      Skoro mowa o tym, które oprogramowanie najlepiej sprawdza się przy Androidzie — polecamy przyjrzeć się Flutterowi.

      Flutter to zestaw narzędzi programistycznych (SDK), który pozwala budować wydajne aplikacje na różne platformy — iOS, Androida, web i desktop — z jednej bazy kodu. Ten otwartoźródłowy SDK do interfejsów stworzyło Google, a pierwsza wersja ukazała się w maju 2017 roku.

      Flutter korzysta z języka Dart. Ta technologia jest łatwa do zrozumienia dla programistów JavaScriptu i Javy. Wykorzystuje większość pojęć obiektowych. Jeśli chcesz stworzyć własną aplikację na iOS i Androida, Flutter może być dla Ciebie najlepszym narzędziem wieloplatformowym. Powstały w nim bardzo znane aplikacje, takie jak Google Ads czy Alibaba.

      Najlepsi programiści Flutter uważają, że główną i najlepszą cechą Fluttera przy budowie aplikacji na Androida jest obsługa widżetów, które poprawiają wygląd aplikacji. Widżety zapewniają różne funkcje — przewijanie, nawigację, czcionki, ikony itd. — dając pełne wrażenie natywnego działania.

      Czytaj więcej:

      Tworzenie aplikacji hybrydowych

      Aplikacja hybrydowa łączy elementy aplikacji natywnych i webowych. Hybrydy to w gruncie rzeczy aplikacje webowe opakowane w aplikację natywną. Po pobraniu ze sklepu i zainstalowaniu lokalnie taka powłoka może łączyć się z możliwościami platformy mobilnej przez przeglądarkę wbudowaną w aplikację. Przeglądarka i jej wtyczki działają wewnętrznie i są niewidoczne dla użytkownika końcowego.

      Aplikacje hybrydowe są popularne, bo pozwalają napisać kod raz, a obsłużyć wiele platform. Ponieważ takie rozwiązania dodają dodatkową warstwę między kodem źródłowym a docelowym frameworkiem, mogą działać nieco wolniej niż natywne lub webowe wersje tej samej aplikacji.

      Zatrudnij najlepszych programistów HTML5!

      Cordova

      Nie wszystkie rozwiązania wieloplatformowe są sobie równe. W Apache Cordova zbudujesz świetne aplikacje hybrydowe na różne urządzenia mobilne, a start jest łatwy. Cordova to rozbudowany program pozwalający projektować, kompilować i wdrażać bardzo funkcjonalne aplikacje mobilne. Obsługuje też technologie, które wielu front-end developerów już zna. Dostępny jest plan darmowy oraz płatny, oferujący więcej danych i dostęp do dodatkowych wtyczek.

      Apache Cordova to otwartoźródłowe środowisko do tworzenia aplikacji mobilnych, które pozwala budować aplikacje wieloplatformowe przy użyciu standardowych technologii webowych, takich jak HTML5, CSS3 i JavaScript. Skorzystaj z frameworka Apache Cordova, żeby tworzyć natywne aplikacje na urządzenia z iOS i Androidem, wykorzystując możliwości urządzeń: czujniki, dane, stan sieci i inne.

      Cordova skraca czas realizacji, bo nie musisz tworzyć osobnej aplikacji na każdą platformę, którą chcesz obsłużyć.

      Ionic

      Ionic to jeden z mocnych zestawów SDK opartych na HTML5, który pozwala tworzyć naturalnie działające aplikacje mobilne przy użyciu nowoczesnych technologii takich jak HTML, CSS i JavaScript. Ten SDK skupia się przede wszystkim na wyglądzie, odczuciach i interakcji z interfejsem użytkownika aplikacji.

      Aplikacje tworzone na platformie Ionic działają na wielu platformach — Androidzie, natywnym iOS, desktopie i w sieci — z jednej bazy kodu. Ten uznany framework wieloplatformowy oferuje gotowe komponenty, typografię, wzorce interakcji i świetne motywy.

      Ten framework jest łatwy w użyciu i zrozumieniu. Korzysta z rozwiązań takich jak TypeScript, Virtual DOM, JSX i async, które najlepiej sprawdzają się w Progressive Web Apps (PWA). Aplikacje zbudowane na platformie Ionic mają m.in. Pacifica, Nationwide czy ChefSteps.

      Chcesz wiedzieć, jak stworzyć aplikację na Androida we frameworku Ionic? Zatrudnij nasz zespół profesjonalistów. Postaw z nami na Ionic na Androidzie!

      NativeScript

      NativeScript, stworzony pierwotnie przez firmę Progress, pozwala budować aplikacje w JavaScripcie albo w dowolnym języku kompilowanym do JavaScriptu, takim jak TypeScript.

      Ten framework do aplikacji mobilnych jest głęboko zintegrowany z nowoczesnymi wersjami Angulara, w tym z funkcjami full-stack, takimi jak integracja z Angular CLI, obsługa routera i generowanie kodu. Obejmuje też integrację z Vue przez wtyczkę stworzoną przez społeczność, która pozwala korzystać z Vue CLI, Vuex i innych przydatnych funkcji Vue.js.

      Jak więc wygląda aplikacja hybrydowa zbudowana w NativeScripcie? Otóż aplikacje mobilne stworzone w NativeScripcie są w praktyce w pełni natywne. Korzystają z tych samych API, co gdyby powstały w Xcode albo Android Studio. Oznacza to natywny interfejs platformy bez użycia WebView i wydajność bliską natywnej.

      Dodatkowo programiści mogą podpiąć do swoich aplikacji mobilnych biblioteki zewnętrzne z Cocoapods, Android Arsenal, Maven i npm.js bez potrzeby stosowania wrapperów.Android pillar - Table 3

      Z technicznego punktu widzenia i pod względem jakości interfejsu natywna technologia tworzenia aplikacji mobilnych ma znacznie więcej do zaoferowania. Są jednak obszary, w których technologie wieloplatformowe mają sens: sektor gier i projekty testowe.

      Zdecydowana większość nowoczesnych gier powstaje w technologiach wieloplatformowych. Radykalnie przyspiesza to prace bez utraty jakości. Wykorzystuje się przy tym specjalne frameworki graficzne (najpopularniejszy to Unity 3D).

      Jeśli projekt trzeba zrobić szybko, żeby przeprowadzić testy, a sytuacja wymaga działania na kilku platformach jednocześnie, wdrożenie wieloplatformowe może być najlepszym rozwiązaniem.

      Jeśli projekt nie jest grą, jest nastawiony na długofalowy rozwój i wymaga dobrego doświadczenia użytkownika, rozsądniej będzie stworzyć aplikację mobilną przy użyciu narzędzi natywnych. Gdy metoda realizacji jest już wybrana, czas omówić koszt stworzenia aplikacji.

      05 Zalety i wady tworzenia na Androida

      Tworzenie aplikacji mobilnych nie jest tanie, a aplikacje mają swoje wady. Przy przemyślanym, profesjonalnym podejściu szybko się to jednak zwraca i daje istotne przewagi nawet nad dostosowaną czy responsywną stroną. 

      Przyjrzyjmy się bliżej zaletom i wadom Androida.

      Zalety Androida

      Lepsza niż strona / idealna na smartfony

      Jeśli kiedykolwiek próbowałeś wejść na stronę sklepu ze smartfona, od razu widzisz, jak niewygodne bywa korzystanie z niej. Bardzo mała czcionka, strony nie mieszczą się na ekranie. Trzeba przybliżać i oddalać widok, co chwilę się gubiąc.

      Aplikacja mobilna jest za to w pełni dopasowana do rozmiaru ekranu smartfona — to główna korzyść aplikacji dla klienta. Co więcej, część funkcji zadziała wyłącznie na urządzeniu mobilnym (na przykład powiadomienia push, połączenia, geolokalizacja).

      Tu najlepszym wyborem będzie tworzenie aplikacji na Androida. Sprawdź 15 Android Mobile App Development Trends No Company Can Miss In 2021, żeby się o tym przekonać. 

      Kanał marketingowy nr 1

      Lwia część internautów korzysta z telefonów komórkowych. A jeśli ktoś instaluje Twoją aplikację na swoim smartfonie, to na pewno jest zainteresowany kupnem Twoich towarów lub usług. 

      Poza tym, skoro większość ludzi korzysta z Androida, masz większą szansę  na to, że nowej aplikacji użyje większość Twojej obecnej bazy klientów.

      Płatności przez Google Pay

      Dziś wszystkie dane płatnicze można trzymać w smartfonie bez obawy o kradzież. Gdy urządzenie ma czytnik linii papilarnych, kod blokady albo wzór, utrata karty bankowej staje się większym problemem niż utrata telefonu. Użytkownik może zrobić zakup jednym kliknięciem w aplikacji mobilnej, zwykle bez wpisywania numeru karty, daty ważności i kodu CVV. To szczególnie ważne, gdy karty nie ma pod ręką albo sprawa jest bardzo pilna.

      Poprawa wyników SEO

      Jeszcze kilka lat temu, wyświetlając wyniki wyszukiwania, Google brało pod uwagę wyłącznie indeksację stron, pomijając treść aplikacji mobilnych. 

      Dziś sytuacja zmieniła się radykalnie. Dzięki aplikacji stworzonej na system Android możesz włączyć indeksowanie aplikacji. Użytkownicy będą wtedy dostawać informacje o usługach Twojej aplikacji, nawet jeśli jeszcze jej nie zainstalowali. 

      Na przykład ktoś szuka w przeglądarce informacji o taniej taksówce. Na stronie pojawia się reklama Twojej aplikacji z rabatem na przejazd. 

      Według danych z 2016 roku tylko 30% właścicieli aplikacji korzystało z ich indeksowania. Przy właściwym podejściu Twoja firma może więc mocno wyprzedzić konkurencję.

      Znajomość lokalizacji użytkownika

      Te dane są cenne nie tylko przy analizie odbiorców — to również narzędzie pomagające użytkownikom. Znając lokalizację, możesz na przykład podać użytkownikowi adresy najbliższych kawiarni, oddziałów banku, najbliższych magazynów sklepu, w których odbierze towar, albo biur firmy. 

      Na przykład Starbucks pokazuje adresy najbliższych lokali i proponuje zamówienie kawy z wyprzedzeniem, żeby nie czekać w kolejce.

      Wykorzystanie WebView

      Właściciele firm mogą przekierować klienta ze strony do aplikacji i odwrotnie. Na przykład ktoś szuka telefonu i klika go na stronie Twojego sklepu. Klient dostaje propozycję przejścia do aplikacji firmy, w której ma już podpięty portfel elektroniczny. 

      Klient nie tylko łatwo dokona zakupu, jeśli znalazł to, czego szukał, ale najprawdopodobniej zostanie w aplikacji, jeśli zdecyduje się szukać dalej. W ten sposób ograniczasz konkurencję innych firm i nie  tracisz klienta na rzecz wyszukiwarek.

      Wielozadaniowość

      Wielozadaniowość jest w tym systemie dobrze zrealizowana — kilka aplikacji działa jednocześnie bez problemów.

      Nawet na słabszym urządzeniu kilka kart przeglądarki, odtwarzacz muzyki i parę zasobożernych aplikacji mogą działać sprawnie naraz. Przełączanie między zadaniami jest szybkie.

      Bieżące aktualizacje

      Google stale pracuje nad ulepszaniem funkcji systemu, poprawianiem błędów i zmianami w interfejsie.

      Niezależni twórcy również wkładają wiele wysiłku w ulepszanie swoich aplikacji i szybko dostosowują je do nowych wersji systemu.

      Cena aplikacji (dla kupujących)

      Wiele aplikacji w Google Play jest tanich albo zupełnie darmowych — inaczej niż w App Store — bo ich stworzenie kosztuje mniej.

      Dostępność

      Android jest dostępny na urządzeniach różnych producentów i marek, bez żadnych ograniczeń.

      Wady Androida

      Koszt 

      Choć stworzenie aplikacji na Androida jest tańsze niż na iOS, wciąż kosztuje. Co więcej, jeśli zdecydujesz się obsługiwać oba systemy (iOS i Android), pamiętaj, że wdrożenie i promocja to dodatkowy koszt. 

      Zanim zaczniesz tworzyć aplikację, dobrze przemyśl swoje cele. Nie warto robić aplikacji tylko dlatego, że „inni mają”. Ważne, żeby rozwiązywała konkretne problemy.

      Większa konkurencja

      Według Google nadchodzi „era aplikacji”, a ich liczba rośnie z roku na rok. Niestety zwiększa to konkurencję o uwagę klienta.

      Do tego nie zapominaj, że użytkowników Androida jest więcej, co przekłada się na większą liczbę aplikacji. Poza tym względna łatwość przejścia weryfikacji w Google Play sprawia, że konkurenci również patrzą w stronę Androida.

      Zgodność

      Poprawne działanie aplikacji natywnej zależy od wymagań konkretnego systemu operacyjnego. Oznacza to, że każda platforma (iOS, Android, Windows) potrzebuje osobnej, działającej wersji programu.

      Wsparcie i utrzymanie

      Trzeba zapewniać regularne aktualizacje i naprawiać problemy ze zgodnością na każdym typie urządzenia. Do tego użytkownikom trzeba stale przypominać o instalowaniu nowych aktualizacji.

      Otwartość systemu

      Android to system otwarty, który łatwo zainstalować na niemal dowolnym urządzeniu z dowolnym sprzętem oraz łatwo zhakować, skopiować i przeinstalować — dlatego ma niską stabilność. 

      Wersje iOS opierają się natomiast na systemie o zamkniętym kodzie źródłowym, którego nie można pobrać i trudno zhakować.

      Podsumowując

      Mimo wszystkich wad system Android cieszył się i będzie cieszyć popytem na rynku urządzeń mobilnych. Główny powód to jego przychylność wobec użytkowników.

      Szeroka gama urządzeń z Androidem pokrywa wszystkie segmenty cenowe — od modeli budżetowych po klasę premium — dzięki czemu niemal każdy może mieć urządzenie z systemem od Google.

      Decyzja należy więc do Ciebie.

      06 Android: funkcje, integracje i API

      Android potrafi bardzo dużo, ale jak w każdym systemie trzeba wiedzieć, od czego zacząć. I nie jest to jedyny powód, by przyjrzeć się funkcjom dokładniej. W porównaniu ze sztywnymi ustawieniami interfejsu iPhone'a Android daje więcej możliwości personalizacji i kontroli. Żeby zaostrzyć Ci apetyt, przyjrzyjmy się podstawowym funkcjom, które warto znać.

      Dla jasności: funkcje Androida i funkcje Google rozpatrujemy osobno. To ważne ze względu na zakaz dotyczący Huawei i możliwy zakaz wobec Xiaomi.

      Uwaga: Oznacza to, że Huawei nie ma już dostępu do samych fundamentów smartfonów z Androidem — Gmail, YouTube, Dysk Google, a nawet sam Google Play Store nie są już dostępne dla Huawei w nowych produktach.

      Funkcje Androida:

      Aparat

      Platforma Android obsługuje różne aparaty i funkcje aparatu dostępne w urządzeniach, pozwalając robić zdjęcia i nagrywać wideo w aplikacjach.

      Zanim pozwolisz swojej aplikacji korzystać z aparatów w urządzeniach z Androidem, przemyśl, jak ma używać tej funkcji sprzętowej.

      • Wymagania dotyczące aparatu. Czy korzystanie z aparatu jest dla Twojej aplikacji tak istotne, że nie chcesz, by instalowano ją na urządzeniu bez aparatu? W takim razie musisz wskazać wymóg aparatu w opisie.
      • Szybkie zdjęcie czy własna obsługa aparatu. Jak Twoja aplikacja będzie korzystać z aparatu? Chodzi tylko o szybkie zdjęcie albo krótki film, czy aplikacja zaproponuje nowy sposób używania aparatu? 
      • Wymagania usługi pierwszoplanowej. Kiedy Twoja aplikacja korzysta z aparatu? Na przykład w Androidzie 9 (API na poziomie 28) i nowszym aplikacje działające w tle nie mają dostępu do aparatu. Warto więc używać aparatu wtedy, gdy aplikacja jest na pierwszym planie, albo w ramach usługi pierwszoplanowej.
      • Przechowywanie. Czy zdjęcia i filmy tworzone przez Twoją aplikację mają być oglądane tylko w niej, czy udostępniane tak, by mogły z nich korzystać inne aplikacje, na przykład Galeria czy aplikacje multimedialne i społecznościowe? Czy chcesz, żeby zdjęcia i filmy były dostępne nawet po usunięciu Twojej aplikacji?

      Bluetooth

      System Android obsługuje stos sieciowy Bluetooth, dzięki czemu urządzenie może bezprzewodowo komunikować się z innymi urządzeniami Bluetooth. Platforma aplikacji daje dostęp do funkcji Bluetooth przez Android Bluetooth API.

      Korzystając z API Bluetooth, aplikacja na Androida może:

      • wyszukiwać inne urządzenia Bluetooth
      • odpytać lokalny adapter Bluetooth o sparowane urządzenia
      • tworzyć kanały RFCOMM
      • łączyć się z innymi urządzeniami przez wykrywanie usług
      • przesyłać dane do innych urządzeń i z nich
      • zarządzać wieloma połączeniami

      Integracja z kontaktami

      Aplikacja Kontakty to jedna z najważniejszych na urządzeniu z Androidem. Nowe dane o znajomych dodajemy niemal codziennie (a czasem serwisy społecznościowe synchronizują je i uzupełniają za nas), wprowadzając do książki adresowej coraz większy chaos. 

      Android oferuje tu pewną pomoc. Przyjrzymy się, jak uporządkować listę kontaktów narzędziami wbudowanymi w system.

      Kontakty dają natychmiastowy dostęp do wszystkich kontaktów powiązanych z Twoim kontem Google. Na początek możesz skorzystać z zakładki „Ulubione”. Dodasz tam osoby, z którymi kontaktujesz się najczęściej, na przykład członków rodziny. Wybierz w tym celu odpowiedni kontakt, przejdź do jego ustawień i znajdź opcję „Dodaj do ulubionych”.

      Innym sposobem na uporządkowanie książki adresowej jest dostosowanie widoku kontaktów. W aplikacji kliknij przycisk „Więcej” i wybierz „Kontakty”. Na kolejnym ekranie wskażesz, które kontakty mają być widoczne w aplikacji, a które ukryte. Dzięki temu nie stracisz osób, z którymi rzadko się kontaktujesz, a jednocześnie nie będą zaśmiecać ogólnej listy.

      NFC

      Near Field Communication (NFC) to zbiór bezprzewodowych technologii krótkiego zasięgu, które do nawiązania połączenia wymagają zwykle odległości nie większej niż 4 cm. NFC pozwala wymieniać niewielkie ilości danych między tagiem NFC a urządzeniem z Androidem lub między dwoma urządzeniami z Androidem.

      Urządzenia z Androidem wyposażone w NFC obsługują jednocześnie trzy główne tryby pracy:

      • tryb odczytu/zapisu, który pozwala urządzeniu NFC odczytywać i/lub zapisywać pasywne tagi i naklejki NFC;
      • tryb P2P, który pozwala urządzeniu NFC komunikować się z innymi urządzeniami NFC. Z tego trybu korzysta Android Beam;
      • tryb emulacji karty, w którym urządzenie NFC działa jak karta NFC. Do emulowanej karty NFC można się wtedy dostać zewnętrznym czytnikiem NFC, na przykład terminalem NFC w punkcie sprzedaży.

      Biometria

      Stosowanie złożonych haseł to bardzo skuteczny sposób ochrony tożsamości użytkownika w sieci. Hasła są jednak zwykle za długie, trudne do zapamiętania i wymagają regularnej zmiany. Uwierzytelnianie dwuskładnikowe również zwiększa bezpieczeństwo, ale zabiera cenny czas i bywa problematyczne dla osób podróżujących za granicę.

      W związku z powyższym Google wspólnie z konsorcjum FIDO Alliance wdrożyło w swoich usługach obsługę uwierzytelniania biometrycznego. Z punktu widzenia bezpieczeństwa jest ono mocniejsze niż hasła i uwierzytelnianie dwuskładnikowe, bo dane biometryczne znacznie trudniej ukraść lub odtworzyć. Proces uwierzytelniania biometrycznego odbywa się lokalnie na urządzeniu, a żadne poufne informacje nie trafiają do aplikacji ani usług, w których użytkownik jest zalogowany.

      Czynniki biometryczne zapewniają bezpieczne uwierzytelnianie na platformie Android, z obsługą rozpoznawania twarzy i odcisku palca. Androida można skonfigurować tak, by obsługiwał inne formy biometrii (na przykład tęczówkę). Wszystkie implementacje biometryczne muszą spełniać wymagania bezpieczeństwa i uzyskać wysoką ocenę, żeby móc korzystać z klasy BiometricPrompt.

      Biblioteki UI

      Aplikacje mobilne stają się coraz mniej statyczne. Animacja interfejsu staje się nieodłączną częścią nowoczesnych aplikacji, czyniąc je wygodniejszymi i łatwiejszymi w nawigacji.

      W projektach na Androida animacji używa się do kilku celów, w szczególności:

      • do pokazywania stanu aplikacji, bo użytkownikowi miło jest otrzymać reakcję na wykonywane działania. Dodatkowo odpowiednia animacja umili oczekiwanie na odświeżenie treści strony;
      • do łączenia różnych faz procesu, zapewniając płynne przejścia i bezproblemową interakcję z użytkownikiem;
      • do wprowadzania nowych elementów i harmonijnego wpasowania ich w treść;
      • do upraszczania interakcji przez informowanie użytkownika o tym, co właśnie się dzieje.

      Animacje mają wzmacniać działania użytkownika. Dziwaczne lub złożone efekty rozpraszają jednak i wprowadzają zamęt. Programiści muszą więc zawsze dbać o czystość rozwiązań.

      Im więcej wiesz o bibliotekach animacji UI/UX dla Androida, tym łatwiej korzystać z nich z głową. Możesz też zatrudnić najlepszych projektantów UX/UI i aplikacji mobilnych. Nie zapomnij też przeczytać naszego wpisu na blogu: Zachwyć użytkowników tymi 31 dobrymi praktykami UX w projektowaniu mobilnym.

      Funkcje Google:

      Google Maps

      To jedno z najbardziej rozpoznawalnych API Google na Androida. Mapy Google to zestaw aplikacji zbudowanych na darmowej usłudze i technologii kartograficznej Google. Aplikacja służy do wyszukiwania informacji na mapie z oznaczeniami atrakcji, firm itd.

      Usługa oferuje następujące tryby wyświetlania:

      • Satelita — pokazuje zdjęcia satelitarne i lotnicze (obejmuje też „Nazwy obiektów”, czyli wyświetlanie informacji na schematach; wcześniej tryb ten nazywał się „Hybrydowy”);
      • Mapa — pokazuje dane kartograficzne;
      • Teren — schematy pokazujące duże elementy powierzchni, takie jak lasy czy wzgórza (pozorna rzeźba 3D);
      • Street View — tryb pozwalający poruszać się po panoramicznych zdjęciach ulic miast;
      • Widok osobisty — tryb spersonalizowany, który pozwala nanieść na mapę wybrane treści.

      Dzięki API map na Androidzie użytkownik może:

      • oglądać ciekawe miejsca na mapie;
      • otwierać pliki z rozszerzeniami KML i KMZ oraz zapisywać w tych formatach potrzebne oznaczenia;
      • planować trasę;
      • dodawać własny tekst, zdjęcia i filmy;
      • wysyłać stworzony widok znajomym.

      Oto niektóre tryby i funkcje:

      Tryb Google Transit podaje szczegółowe wskazówki, jak przejechać między dwoma wskazanymi punktami dostępnym transportem publicznym, i szacuje czas podróży.

      Użytkownik może wysłać na skrzynkę link ze swoją lokalizacją albo umieścić kod HTML Map Google na stronie internetowej. W Mapach Google jest też narzędzie do generowania mapy do druku.

      Zintegrowane wyniki wyszukiwania informacji o firmach — wyszukiwanie adresów firm i ich danych kontaktowych w wybranym obszarze. Jeśli na przykład wpiszesz zapytanie „sushi w okolicy *nazwa*”,  zobaczysz najbliższe restauracje sushi, ich adresy i godziny otwarcia. Możesz też sprawdzić dodatkowe informacje: metody płatności, oceny, opinie klientów itd.

      W mapach dostępna jest funkcja Map Maker (wcześniej osobna usługa), która pozwala uzupełniać treść własnymi informacjami.

      Google Assistant

      Asystent Google ruszył w 2016 roku. Pierwotnie miał być dostępny na smartfonach tworzonych przez samo Google, czyli Google Pixel. Tak dobry pomysł i taka realizacja asystenta głosowego nie mogły jednak długo żyć w tak ograniczonej przestrzeni. Asystent Google trafił więc na inne smartfony.

      Nie zakładaj jednak, że asystent głosowy Google jest dostępny tylko na smartfonach z Androidem. Jeśli wejdziesz do App Store na swoim iPhonie, też możesz z niego korzystać. Jesteś gotów porzucić Siri i całkowicie zaufać Asystentowi Google? Hmm... jest nad czym myśleć. Oczywiście nie ogranicza się on do smartfonów — działa też na tabletach, co jest równie wygodne.

      W ostatnich latach smartwatche stały się świetnym uzupełnieniem smartfonów. To dobre narzędzie, które pozwala obsłużyć część spraw bez wyjmowania telefonu z kieszeni. Na smartwatchu zobaczymy, kto dzwoni, przeczytamy wiadomość, zmienimy utwór albo polubimy post na Instagramie. Często zdarza się jednak, że chcielibyśmy to wszystko zrobić, ale mamy zajęte ręce. Wtedy na ratunek przychodzi Asystent Google na smartwatchu. Szybko rozpoznaje głos użytkownika i wykonuje wszystkie te operacje na komendy głosowe. Bardzo wygodne!

      Google Pay

      Odpowiedzią Google na Apple Pay jest Google Pay dla użytkowników Androida. 

      Wraz z premierą Androida M jesienią 2015 roku w Stanach Zjednoczonych ruszyła usługa płatnicza Android Pay. Później zmieniono jej nazwę na Google Pay.

      Google Pay pozwala łatwo płacić za zakupy smartfonem z Androidem w sklepach, w internecie i w aplikacjach mobilnych.

      W zwykłym sklepie przy kasie wystarczy zbliżyć smartfon do terminala płatniczego i zakup zostanie opłacony — bez gotówki, plastikowej karty i kodu PIN. Jeśli jednak wykonasz więcej niż trzy transakcje powyżej określonej kwoty, do zatwierdzenia płatności trzeba będzie odblokować telefon.

      Powiadomienia push

      Poza tym, że Android obsługuje usługi „push”, czyli wyświetla dane od razu po ich nadejściu, zamiast czekać, aż o nie poprosisz, ma też obszar powiadomień dla przychodzących informacji. 

      Dzięki temu masz wszystkie nowości dosłownie „pod ręką”, niezależnie od tego, co akurat robisz.

      Powiadomienia mogą pochodzić z bardzo różnych miejsc: klienta poczty, poczty głosowej, komunikatorów, mediów społecznościowych i aplikacji z wiadomościami. Gdy przyjdzie nowe powiadomienie, w lewym górnym rogu ekranu pojawi się ikona. Możesz ściągnąć panel w dół, żeby zobaczyć szczegóły powiadomienia, a potem, jeśli chcesz, podjąć działanie.

      Sprawdź ustawienia poszczególnych aplikacji zainstalowanych na urządzeniu, żeby zobaczyć, jakie powiadomienia oferują, a potem skonfiguruj je tak, jak chcesz.

      Play Store

      Play Store to bardzo przydatna usługa. To „firmowy” sklep internetowy. Wszystkie programy są w nim podzielone na kilka kategorii („Aplikacje”, „Gry”, „Muzyka”, „Książki” itd.), a każda z nich ma własny podział (na gatunki, style, kierunki itd.).

      Produkty w Play Store są w większości darmowe, a ceny płatnych programów są dość niskie. Z aplikacji Play Store mogą korzystać wszyscy użytkownicy smartfonów z Androidem.

      Korzystanie z Play Store otwiera dodatkowe możliwości smartfonów, które na pierwszy rzut oka wydają się niewiarygodne (na przykład używanie telefonu jako kamery internetowej albo skanera kodów kreskowych).

      Konto w aplikacji jest potrzebne, żeby:

      • mieć dostęp do ponad 1,5 miliona aplikacji napisanych specjalnie na Androida;
      • korzystać ze wszystkich usług Google (od wirtualnego dysku i dokumentów online po pocztę i mapy);
      • synchronizować zakładki i notatki na wszystkich swoich urządzeniach z Androidem (smartfonie, tablecie itd.);
      • synchronizować kontakty i mieć do nich dostęp ze wszystkich urządzeń z Androidem.
      • Możliwości aplikacji są oczywiście dość szerokie, ale można z nich korzystać dopiero po rejestracji w usłudze.

      Po wybraniu aplikacji (zwykłym dotknięciem) otworzy się jej opis. Następnie dotknij „Zainstaluj”, a po zakończeniu instalacji otwórz aplikację. Przy instalacji zwróć uwagę na uprawnienia, o które aplikacja prosi. Choć Play Store pilnuje bezpieczeństwa oferowanych aplikacji, możesz natrafić na program z wirusem albo aplikację odczytującą SMS-y lub dane osobowe użytkownika.

      Przy płatnym pobraniu pieniądze zostaną automatycznie pobrane z karty podpiętej do konta. Bez podpiętej karty nie da się pobierać płatnych aplikacji.

      Podsumowanie

      Jak widzisz, lista funkcji, integracji i API Androida jest dość szeroka. Nawet jeśli potrzebna integracja nie istnieje albo nie działa tak, jak chcesz, zachowaj spokój. Wielką zaletą tworzenia na Androida jest to, że każda natywna, oficjalna funkcja ma nieoficjalną alternatywę.

      Możesz być pewien, że Twój produkt będzie miał wszystkie funkcje, jakie sobie wyobrazisz. 

      Wystarczy zatrudnić najlepszych programistów API.

      07 Budowa aplikacji na Androida — proces i koszty

      Czy wiesz, że w Google Play publikowanych jest codziennie około 6140 aplikacji mobilnych? Statystyki mówią jedno — czas stworzyć własną aplikację na Androida. Jeśli poważnie myślisz o zbudowaniu aplikacji, nasze wskazówki Ci w tym pomogą.

      Jak powstaje aplikacja na Androida? To pytanie klienci zadają nam najczęściej. Chcą wiedzieć, ile czasu i pieniędzy ich to będzie kosztować, jak zorganizowana jest praca, od czego zacząć i jak w efekcie zarobić, a nie stracić.

      To istotne pytanie, na które nie da się odpowiedzieć w dwóch zdaniach, skłoniło nas do napisania tego rozdziału. Nie będzie tu mglistych porad z cyklu „jak stworzyć aplikację na Androida w trzech prostych krokach”. Zamiast tego podzielimy się doświadczeniem zebranym przez ponad siedem lat pracy na rynku aplikacji mobilnych.

      Nie ma znaczenia, czy planujesz narzędzie dla firmy, czy startup z szeroką grupą odbiorców. Rozwiejemy Twoje obawy i opiszemy etapy tworzenia aplikacji mobilnej.

      We wcześniejszych artykułach pisaliśmy o:

      Teraz porozmawiajmy o tworzeniu aplikacji na Androida: jak zorganizowana jest praca, co obejmuje etap analizy i jak powinien wyglądać zakres prac.

      Oto więc sztuka „Jak zrobić aplikację na Androida” w ośmiu aktach.

      Uwaga: Tworzenie aplikacji na Androida to skomplikowany i bardzo pracochłonny proces. To pełnoprawne wytwarzanie oprogramowania. Żeby łatwiej było Ci zrozumieć, jak tworzymy aplikacje mobilne, pokrótce opowiemy o każdym etapie naszej pracy.

      Faza przygotowawcza

        1. Wypracowanie pomysłu / rozwinięcie głównej idei

          Każda aplikacja zaczyna się od pomysłu. Ludzie przychodzą do naszej firmy, żeby zrealizować swoją wizję aplikacji mobilnej lub serwisu webowego albo zautomatyzować procesy biznesowe. Mówisz nam, jakie zadania ma rozwiązywać przyszła aplikacja na Androida, a my zaczynamy zbierać dane: dogłębny przegląd rynku, analizę istniejących rozwiązań, badanie konkurencji i wzorców zachowań klientów. Na każdym etapie badań mamy na uwadze użytkownika końcowego i myślimy o cyklu życia klienta.

          Przeprowadzamy bezpłatną analizę biznesową, doradzamy klientowi i dopracowujemy koncepcję projektu z uwzględnieniem potrzeb użytkowników.

          Pomaga nam to zrozumieć, jak ludzie będą korzystać z nowej aplikacji, i sprawia, że jest ona możliwie wygodna, zrozumiała i użyteczna.

        2. Stworzenie strategii rozwoju aplikacji

          Opracowujemy szczegółową strategię rozwoju przyszłej aplikacji. Określamy cechy użytkowników, opisujemy historyjki użytkownika, tworzymy mapę podróży klienta i formułujemy wymagania techniczne usługi. Innymi słowy, ustalamy, jaka ma być aplikacja, co ma umieć i jak będzie działać.

          Mając takie założenia techniczne, nasz zespół projektantów i programistów dokładnie rozumie, jakiej usługi oczekuje klient, i stopniowo realizuje pierwotny pomysł.

          Każde studio ma własne podejście do tworzenia takiej strategii. Uważamy, że do udanej realizacji projektu powinna ona zawierać:

          1. informacje ogólne

            – cel stworzenia aplikacji;
            - opcje realizacji: aplikacja natywna, wieloplatformowa czy hybrydowa;
            - skalowalność: czy aplikacja potrafi szybko dostosować się do nagłych zmian i szczytowych obciążeń? Na przykład do wzrostu liczby użytkowników albo wolumenu przesyłanych danych;
            - odporność na awarie: czy aplikacja ma działać dalej, gdy zawiedzie jeden lub kilka jej komponentów.

          2.  Wymagania funkcjonalne aplikacji:

            – role użytkowników: jakie mają być poziomy dostępu dla różnych użytkowników, na przykład gościa i użytkownika zalogowanego;
            – formaty danych: jak w aplikacji będzie realizowana wymiana danych;
            – integracje: czy aplikacja ma współpracować z innymi usługami, takimi jak systemy płatności i serwery pocztowe?
            – interfejsy dostępu: jak aplikacja będzie wymieniać dane z usługami zewnętrznymi;
            – funkcje dodatkowe: czy aplikacja ma umieć coś jeszcze? Na przykład pracować z plikami albo bibliotekami szyfrującymi;
            – konfiguracja i administracja: za pomocą jakich elementów administrator będzie zarządzać aplikacją;
            – budowa systemu: z czego składa się aplikacja mobilna, czyli ekrany, powiadomienia push, system uwierzytelniania itd.

          3. Wymagania pozafunkcjonalne

            – bezpieczeństwo: wymagania dotyczące ochrony aplikacji;
            – logowanie zdarzeń: czy system ma generować i zapisywać raporty o błędach powstałych w trakcie działania aplikacji? Jeśli tak, dla jakich rodzajów zdarzeń?
            – wydajność: wymagania wobec aplikacji, takie jak szybkość bazy danych;
            – wymagania sprzętowe serwera: lista specyfikacji technicznych

          4. Realizacja funkcjonalności aplikacji:
            – ekran ładowania
            – rejestracja i logowanie
            – ekran główny
            – menu
            – wyszukiwanie
            – powiadomienia

          Dzięki kompetentnie przygotowanej strategii technicznej nasz zespół projektantów i programistów dokładnie zrozumie, jakiej usługi oczekuje klient, i stopniowo zrealizuje pierwotny pomysł.

        3. Wireframing

          Rozumiejąc, czego użytkownicy oczekują od aplikacji, przechodzimy do wireframingu. Dobrze zbudowany interfejs gwarantuje, że użytkownik szybko zorientuje się, jak aplikacja pomoże mu rozwiązać jego problem.

          Masz okazję zobaczyć funkcjonalność przyszłej aplikacji bez części programistycznej.

        4. Projekt aplikacji i design UX/UI

          Czasem klienci przychodzą z gotowym layoutem. Jeśli klient nie ma projektu, nasi projektanci UX/UI budują go od zera. Projektowanie wizualne zaczynamy, gdy analityk przekaże projektantowi podstawę interfejsu graficznego, czyli wireframe'y. Rysujemy mapę ekranów, szczegółowy prototyp i elementy graficzne, uwzględniając różne scenariusze użycia.

          Na tym etapie projektant UI/UX tworzy statyczne prototypy, a na życzenie klienta również prototypy interaktywne. W ten sposób pokazujemy, jak aplikacja będzie wyglądać i jakiego zachowania się po niej spodziewać, biorąc pod uwagę proponowane funkcje. Wszystko zależy od konkretnych zadań i życzeń klienta.

          Podczas projektowania aplikacja zyskuje swój przyszły wygląd. Kluczowe są informacje zwrotne od analityka biznesowego i klienta, tak aby projekt w pełni odpowiadał wymaganiom aplikacji.

          Uwaga: Prowadzenie warsztatów z klientem, zwłaszcza na wczesnych etapach, to najważniejsza część fazy przygotowawczej i wykonawczej każdego projektu.

          Faza wykonawcza

        5. Programowanie

          Gdy jest już szczegółowa strategia techniczna, gotowy projekt graficzny i zatwierdzony prototyp aplikacji, zaczyna się etap główny. Zespół programistów pisze kod realizujący zamierzone zachowanie aplikacji i łączy jej logikę z back-endem, jeśli taki przewidziano. Odwzorowujemy też gotowy projekt w kodzie — zajmujemy się wszystkimi stylami oraz elementami interfejsu, z których korzysta użytkownik.

          Gdy tylko część funkcjonalności jest gotowa, testujemy ją i pracujemy dalej nad pozostałymi funkcjami.

          Ważne, by w trakcie prac programistycznych, gdy powstaje warstwa wizualna, zaangażować projektanta. Sprawdzi on, jak dobrze programiści odwzorowali wireframe'y: czy wszystkie style odpowiadają wybranym, czy użyto właściwego koloru, jakie są proporcje, jak zaokrąglono narożniki itd.

        6. Testy: automatyczne (CI/CD) i manualne

          Inżynierowie QA z Ideamotive są podłączeni do projektu od samego początku i testują tak często, jak to możliwe. Zapewnia to wysoką jakość, co pomaga utrzymać projekt w budżecie.

          Na etapie wyceny testujemy specyfikację techniczną. Dokumentację testową tworzymy równolegle z pracami programistycznymi — na przykład przypadki testowe. Gdy część funkcjonalności jest gotowa, zaczynają się testy (zarówno automatyczne (CI/CD), jak i manualne).

          Nasi programiści dodają wszystkie błędy do systemu zgłoszeń. Po ich naprawie sprawdzamy, czy wszystko działa poprawnie i czy  poprawki nie wpłynęły na pozostałą funkcjonalność.

          Przed wdrożeniem aplikacji przeprowadzamy testy akceptacyjne: przechodzimy przez główne scenariusze biznesowe, żeby upewnić się, że zachowanie aplikacji odpowiada dokumentacji testowej i wymaganiom klienta.

          Faza po wdrożeniu

        7. Wdrożenie

          Gdy seria testów i poprawek jest zakończona, a programiści, analitycy, testerzy i projektanci zgadzają się co do efektu, przychodzi czas na dodanie aplikacji do sklepu Google Play albo innej usługi wskazanej przez klienta.

          Żeby aplikacja przeszła weryfikację w sklepie, klient może poprosić programistów o pomoc przy wydaniu albo samodzielnie przygotować i opublikować aplikację.

        8. Aktualizacje i nowe wydania (na bieżąco)

          Historia nie kończy się na publikacji aplikacji na Androida. Jeśli klient znajdzie błędy po wydaniu, naprawiamy je.

          Jeśli pierwsze miesiące życia aplikacji pokażą, co i gdzie trzeba dokończyć lub przerobić, są dwie opcje: zawrzeć umowę utrzymaniową albo rozpocząć nową fazę prac z uwzględnieniem nowych informacji.

          Tworzenie aplikacji mobilnych nie jest łatwe. Wiele etapów przenika się albo biegnie równolegle. Instagram potrzebował ponad trzech lat, żeby stać się wygodną i ulubioną aplikacją milionów. I wciąż ją ulepsza oraz dodaje nowe funkcje.

          Zanim zaczniesz fantazjować o tym, w co zainwestujesz po sprzedaży aplikacji gigantowi IT pokroju Google, przygotuj się — czeka Cię mnóstwo pracy.

          A co z kosztem zatrudnienia programisty aplikacji na Androida?

          Omówmy to szczegółowo!

      Ile kosztuje stworzenie aplikacji na Androida

      Pierwsze pytanie klienta brzmi: „Ile to będzie kosztować?”. A zaraz po nim: „Ile trwa stworzenie aplikacji na Androida?”. Żeby odpowiedzieć na oba, Ideamotive przygotowuje wycenę i plan prac. 

      Na tym etapie do procesu dołącza zwykle project manager (PM). Może działać po stronie klienta albo po stronie zespołu programistycznego. Do zadań project managera należą: 

      • koordynowanie pracy zespołu;
      • komunikacja z klientem.

      Co jednak kryje się pod tajemniczym słowem „wycena”? Na tym etapie analizujemy dokumentację techniczną. Wyliczamy, ile potrwają prace programistyczne i testy. Identyfikujemy scenariusze i wąskie gardła w wymaganiach.

      Wycena ekspresowa zajmuje od kilku godzin do jednego dnia i daje przybliżony obraz nakładu pracy. Szczegółowa analiza może trwać od kilku dni do tygodnia, ale pozwala precyzyjnie określić, jak, kiedy i jaką aplikację ostatecznie otrzymasz.

      Jeśli analityk biznesowy dołączy do projektu na etapie wyceny, klientowi i programistom łatwiej wypracować wspólny obraz aplikacji i wszystko dokładnie policzyć.

      Niezależnie jednak od tego, jak szczegółowa jest wstępna wycena, klienci często dodają nowe funkcje w trakcie projektu. Lista zadań może się wydłużyć. Wtedy wyceniamy ponownie i przesuwamy datę wydania. 

      W efekcie budżet rośnie.

      Według różnych źródeł koszt stworzenia profesjonalnej aplikacji mobilnej może wynieść od skromnych 5000 dolarów do niewiarygodnych 500 000 dolarów.

      Żeby dokładniej poznać proces ustalania ceny, znajdź chwilę na lekturę: How To Estimate Mobile App Development Cost [Project Manager's Guide]

      08 Zatrudnianie programistów Android — o czym pamiętać?

      Jak przy każdej rekrutacji do zespołu, szukanie programistów Android to długi i złożony proces. Przy bardzo małej liczbie ekspertów dostępnych na lokalnym rynku, ograniczonym budżecie projektu i potrzebie skalowania tu i teraz wygląda to na „misję niemożliwą”.

      Przyjrzyjmy się jednak wszystkiemu po kolei.

      Przegląd globalnego rynku programistów Android

      Według Stack Overflow Developer Survey 2020 udział programistów Android wynosi 26,2%

      Wpisz szybko „Android” w ofertach pracy na LinkedInie, a zobaczysz ponad 110 000 wyników.

      Choć Android istnieje od ponad dekady i system wydaje się osiągać pewien poziom dojrzałości, rynek pracy nie zwalnia. Coraz więcej firm szuka wykwalifikowanych programistów Android.

      Jeśli więc chcesz tworzyć aplikacje działające na urządzeniach z Androidem, pospiesz się z zatrudnieniem programisty.

      Ale gdzie go znaleźć?

      Dobrzy kandydaci są w USA, UE i regionie Europy Środkowo-Wschodniej. Według Statista rozkład programistów aplikacji na Androida na świecie według krajów wygląda tak:Android pillar - Chart 3

      Wynagrodzenia programistów Android zależą od poziomu umiejętności danej osoby (junior, mid, senior), doświadczenia zawodowego, kraju zamieszkania, firmy i tak dalej. 

      Żeby zobrazować, ile zarabiają programiści aplikacji na Androida, porównajmy wynagrodzenia w trzech różnych regionach — Europie Środkowo-Wschodniej, Europie Zachodniej (Holandia) i Stanach Zjednoczonych.

      Zastrzeżenie: Poniższe liczby to jedynie szacunki i mogą się różnić w zależności od wymienionych wyżej czynników.  

      Wynagrodzenia programistów Android

      Nasuwa się pytanie: „Koszt zatrudnienia programisty aplikacji na Androida w USA jest wyższy ze względu na jego umiejętności i doświadczenie, prawda?”.

      Wcale nie!

      Zatrudnianie programistów Android z Europy Środkowo-Wschodniej jest równie pewne jak zatrudnianie ich na miejscu.

      Mają ten sam poziom kwalifikacji, a w niektórych obszarach nawet wyższy. Jedyna różnica polega na tym, że taki pracownik nie będzie Twoim sąsiadem zza ściany.

      Przyjrzyjmy się jednak innym opcjom!

      Gdzie zatrudnić programistów aplikacji na Androida

      Rekrutacja i praca wewnątrz firmy

      Pierwsza opcja to zatrudnienie programisty na etat. W zależności od projektu może się okazać, że jeden pracownik to za mało. Zespół tworzący aplikację liczy zwykle 5–7 specjalistów: inżyniera QA, project managera, programistów Android, programistę backendu (strona serwerowa) i projektanta UX/UI, żeby pokryć wszystkie obszary potrzebne do zbudowania świetnej aplikacji.

      Wybierając tę strategię, pamiętaj, że w dzisiejszych realiach rynku pracownika znalezienie dokładnie zweryfikowanych specjalistów jest dla rekruterów trudne. Szczególnie przy obsadzaniu stanowisk programistycznych możesz napotkać problemy.

      Ze względu na dużą konkurencję musisz pokazać się z najlepszej strony i uzbroić w naprawdę przekonującą ofertę, podkreślającą zwłaszcza kulturę firmy, zachęty i benefity, możliwości rozwoju kariery oraz konkurencyjne wynagrodzenie.

      Jeśli zdecydujesz się zatrudnić programistów na etat, musisz liczyć się z wysokimi wynagrodzeniami (w Stanach Zjednoczonych senior mobile developer zarabia średnio nawet 180 000 dolarów rocznie, a w Wielkiej Brytanii nawet 110 000 dolarów), a także ze znacznie mniejszą pulą specjalistów w Twoim mieście, a nawet w całym kraju, w porównaniu z rynkiem globalnym. Warto więc rozszerzyć poszukiwania na inne prężne części świata — w samym regionie Europy Środkowo-Wschodniej znajdziesz ponad milion ekspertów technologicznych.

      Sam proces rekrutacji prowadzony wewnętrznie bywa żmudny i pracochłonny. Przygotuj się na czasochłonne i kosztowne ogłoszenia, współpracę z działem HR, a w niektórych przypadkach na zatrudnienie doświadczonego headhuntera, który wykorzysta własną sieć kontaktów i zna rynek.

      Drugi przypadek, w którym często potrzebny jest programista na etacie, to prowadzenie firmy programistycznej. Mowa tu o dużej firmie lub grupie firm z własnym produktem, z zespołem programistów, testerów i analityków. Mają tajny produkt albo unikalną usługę, nad którymi pracują dzień i noc, zapewniając całemu zespołowi zajęcie.

      Zyskujesz pełną kontrolę nad procesem tworzenia aplikacji i  możesz utrzymywać bliską, codzienną komunikację oraz współpracę.

      Zalety

      • Dobra komunikacja.
      • Łatwo utrzymać kulturę organizacji.
      • Wolny internet nie zaburza pracy.
      • Brak różnicy stref czasowych.

      Wady

      • Wymaga pełnoetatowego wynagrodzenia.
      • Wymaga zapewnienia pełnego zatrudnienia.
      • Dodatkowe koszty biura, sprzętu i podatków.
      • Konieczność zorganizowania procedur kadrowych i samego procesu wytwarzania.
      • W dużej mierze to przepłacanie za fizyczną obecność.

      Platformy freelancerskie

      Dla wielu firm najlepszym rozwiązaniem jest zatrudnianie freelancerów. Jeśli firma jest mała, zadania pojawiają się okresowo — przy raportowaniu, przy przejściu z wersji na wersję produktu, przy wydawaniu aktualizacji albo przy jednorazowych konsultacjach — freelancerzy sprawdzą się dobrze.

      Najpopularniejsze platformy tego typu to Upwork, YouTeam, Freelancer.com i Fiverr. 

      Krótko mówiąc, wszystkie działają tak samo: 

      1. wchodzisz na stronę, 
      2. zakładasz konto „klienta”, 
      3. tworzysz ogłoszenie, 
      4. czekasz, aż kandydaci prześlą Ci swoje zgłoszenia, 
      5. zatrudniasz programistę Android online,
      6. ustalasz z wybranymi programistami zasady współpracy.

      Zalety

      • Niższe stawki.
      • Duża baza kandydatów.
      • Dostępne opinie wcześniejszych klientów.
      • Bardzo dobre do krótkich projektów lub drobnych zmian w istniejących.

      Wady

      • Brak gwarancji jakości.
      • Jedyną ochroną jest regulamin platformy.
      • Różne strefy czasowe.
      • Możliwa bariera językowa.
      • Wszystkim musisz zarządzać samodzielnie.

      Zatrudnienie zewnętrznej firmy mobilnej

      Wraz ze wzrostem globalnego rynku IT powstało wiele firm programistycznych. Zespoły te oferują zwykle tanie usługi tworzenia aplikacji.

      Jak to robią? Większość z nich nie dopłaca swoim pracownikom i wykorzystuje początkujących albo świeżych absolwentów jako tanich programistów. 

      Nie znaczy to z góry, że Twoja aplikacja będzie kiepskiej jakości, ale bądźmy szczerzy: wybierając tę opcję, ograniczasz się do pracowników, którzy akurat pracują w tej firmie.

      Nigdy więc nie wiesz, który specjalista pracował na przykład nad wireframe'ami Twojego projektu — czy była to osoba bardzo doświadczona, czy początkujący programista. 

      Inną wadą jest to, że wiele agencji programistycznych zbudowanych jest wokół jednej lub kilku technologii, na przykład React Native albo Javy. Oznacza to, że często mają ograniczone pole przy proponowaniu klientom rozwiązań technologicznych.

      Zalety

      • Niższa cena.
      • Brak dodatkowych kosztów.
      • Otrzymujesz gotową aplikację.

      Wady

      • Brak gwarancji jakości.
      • Ograniczony wybór stosu technologicznego.
      • Ograniczony wybór zespołu programistów.

      Outsourcing programistów dopasowanych do projektu ze zweryfikowanego marketplace'u

      Wreszcie możesz zwrócić się do dedykowanego zespołu, takiego jak Ideamotive czy Toptal. Takie firmy świadczą pełen zakres usług — od dopracowania koncepcji projektu aplikacji po jej wydanie oraz dalsze wsparcie i utrzymanie.

      W zależności od regionu takie zespoły potrafią przy tym dać bardzo dobry stosunek jakości do ceny. Europa Wschodnia słynie na przykład z wysoko wykwalifikowanych programistów aplikacji mobilnych. Stawka godzinowa programisty w, powiedzmy, Polsce to około 30–50 dolarów za godzinę, co oznacza, że średnia cena projektu aplikacji zaczyna się od około 50 000 dolarów.

      Co więcej, firmy te mają zwykle długą historię i wieloletnie doświadczenie w outsourcingu tworzenia aplikacji z programistami zatrudnionymi na pełen etat. Ze względu na ostrą konkurencję cenią swoją reputację, markę i klientów.

      Ideamotive to wyspecjalizowana agencja tworząca aplikacje webowe i mobilne, świadcząca usługi programistyczne od 2014 roku. Doskonale wiemy, jak realizować cele naszych klientów i dostarczać użytkownikom końcowym produkty wysokiej jakości.

      Dobra firma outsourcingowa zapewni wszystkich specjalistów: analityków, programistów, konsultantów i project managerów. 

      Znalezienie jednej osoby, która ogarnia wszystko, jest bardzo trudne i niepotrzebne. Wąski specjalista znajdzie rozwiązanie w kilka minut, a etatowy pracownik może szukać go godzinami, czasem dniami, marnując czas i pieniądze firmy.

      Zalety

      • Korzyści z procesów biznesowych bez zarządzania nimi. Ważne funkcje przekazujesz wykonawcom, więc efekt osiągasz siłami zewnętrznymi.
      • Pozyskanie kompetentnych specjalistów. Firmy outsourcingowe to profesjonaliści w swojej dziedzinie, więc wysoko wyspecjalizowane zadania wykonują jak nikt inny.
      • Oszczędność zasobów kadrowych. Skoro część procesów biznesowych przechodzi do partnera, firma nie musi utrzymywać własnych pracowników do ich obsługi.
      • Oszczędność pieniędzy. Mniejsze zatrudnienie oznacza niższy łączny fundusz płac, a to z kolei niższe koszty składek i podatków.
      • Wzrost efektywności działalności podstawowej. Pozbycie się funkcji pobocznych pozwala skupić się na głównym kierunku i zwiększyć jego skuteczność.
      • Zachowanie statusu prawnego firmy. Jeśli nie zatrudniasz pracowników na etat, tylko korzystasz z wykonawców, firma spełnia kryteria małego przedsiębiorstwa, nawet gdy faktycznie pracuje dla niej wiele osób.
      • Brak kosztów obsługi kadrowej. Firma outsourcingowa sama dobiera personel, więc klient ma pewność, że procesy biznesowe realizują profesjonaliści.
      • Brak formalnego stosunku pracy ze specjalistami. Choć księgowi, prawnicy i inni pracownicy obsługują firmę klienta, formalnie pracują dla wykonawcy.
      • Brak sporów i nieporozumień z personelem. Jeśli specjalista jest z czegoś niezadowolony, może zgłosić to tylko swojemu pracodawcy. Klient płaci agencji za usługi i nie zajmuje się zarządzaniem personelem.
      • Brak problemów z urzędami. Rutynowe kontrole kadrowe w żaden sposób nie dotyczą firmy. Pracownicy są formalnie zatrudnieni w innej organizacji.
      • Relacja oparta na umowie. Współpracę wykonawcy z klientem formalizuje umowa. Określa ona wszystkie obowiązki i odpowiedzialność stron oraz ważne niuanse współpracy.
      • Płatność za efekt. Etatowy pracownik może po prostu odsiedzieć swoje „od dzwonka do dzwonka”, robiąc minimum. Osoba spoza firmy dostaje wynagrodzenie wyłącznie za konkretny rezultat.
      • Wszechstronność usług. Pod zewnętrzną kontrolę można przenieść dowolne funkcje poboczne. Księgowość, obsługa prawna, sprzątanie, usługi logistyczne, obsługa kadrowa — przedsiębiorca może powierzyć partnerom każde zadanie, jeśli widzi w tym korzyść.

      Wady

      • Trudno utrzymać kulturę organizacji.
      • Różne strefy czasowe.
      • Zależność od zewnętrznych wykonawców.

      Jak zatrudnić programistę Android

      Umiejętności wymagane od programisty aplikacji na Androida

      Możesz szukać kogoś do drobnych poprawek albo do poprowadzenia całego procesu wytwarzania. W zależności od potrzeb zatrudnisz programistów Android na różnych poziomach — junior, mid lub senior.

      Programista Android — junior

      • mniej niż 3 lata doświadczenia zawodowego;
      • tworzy proste aplikacje;
      • może pracować jako wsparcie programistów mid i senior.

      Programista Android — mid

      • 3+ lata doświadczenia;
      • zajmuje się złożonymi projektami opartymi na Androidzie;
      • potrafi pracować samodzielnie.

      Programista Android — senior

      • 5+ lat doświadczenia;
      • prowadzi, nadzoruje i doradza w dużych projektach;
      • obejmuje rolę lidera zespołu.

      Czy to początkujący junior, czy doświadczony senior — programista Android musi mieć solidną wiedzę techniczną oraz umiejętność rozwiązywania problemów i pracy zespołowej. To absolutne minimum.

      Kompetencje twarde programisty Android

      Zacznijmy od strony technicznej. Minimalny zestaw umiejętności programisty aplikacji na Androida:

      Android pillar - Table 5

      Kompetencje miękkie programisty aplikacji na Androida

      Jeśli chodzi o cechy interpersonalne, oto czego oczekiwać od kandydata:Android pillar - Table 6

      Jak przeprowadzić rozmowę z programistą Android?

      Wkrótce zaczną spływać zgłoszenia. Kolejnym krokiem do zatrudnienia zdalnego programisty Android będzie wybranie najlepiej wykwalifikowanych kandydatów i przeprowadzenie ich przez kilka rund rozmów: rozmowę techniczną sprawdzającą wiedzę oraz rozmowę o kompetencjach miękkich, pokazującą, jak radzą sobie z rozwiązywaniem problemów, komunikacją i innymi ważnymi aspektami pracy zespołowej.

      Pytania o kompetencje twarde

      • Jakie są zalety systemu Android?
      • Wyjaśnij pokrótce architekturę Androida / Android Framework.
      • Jakie komponenty są potrzebne w nowym projekcie na Androida?
      • Wyjaśnij pokrótce, czym są „Services” i „Activities”.
      • Wyjaśnij cykl życia aktywności.
      • Czym są intenty niejawne i jawne?
      • Jakich narzędzi używa się do debugowania na platformie Android?
      • Jak diagnozujesz typowe awarie aplikacji na Androida?
      • Jak wykrywasz wycieki pamięci w aplikacji na Androida?
      • Wymień dostępne na rynku narzędzia do automatyzacji testów mobilnych.

      Pytania o kompetencje miękkie

      • Dlaczego aplikujesz na stanowisko programisty Android w naszej firmie?
      • Jakie są Twoje zawodowe mocne i słabe strony?
      • Opisz najciekawsze projekty aplikacji na Androida, w których brałeś udział.
      • Przypomnij sobie decyzję podjętą w projekcie aplikacji na Androida, która okazała się błędem. Czego się z tego nauczyłeś?
      • Lubisz uczestniczyć w analizie, projektowaniu i wdrożeniu, czy wolisz skupić się wyłącznie na realizacji konkretnego zadania?

      09 Przykłady Androida w praktyce. Aplikacje światowej klasy

      Google Play Store rozwija się w ogromnym tempie. Kilka lat temu mocno odstawał od App Store Apple'a jakością aplikacji, a wśród ich ogromnej liczby bardzo trudno było znaleźć coś naprawdę przydatnego.

      Dziś jest znacznie lepiej. W tym rozdziale przyjrzymy się, dlaczego firmy stawiają na Androida i jakie korzyści biznesowe udało im się dzięki temu osiągnąć.

      Zaczynajmy!

      TikTok

      TikTok

      TikTok to aplikacja do tworzenia zabawnych krótkich filmików z możliwością dzielenia się swoją twórczością ze znajomymi na całym świecie. Pełna swoboda wyobraźni i kreatywności w muzyce czy tańcu oraz wysokiej jakości klipy wideo. Jeśli jesteś osobą kreatywną i rozpierają Cię pomysły, ta aplikacja pomoże Ci je zrealizować. Wystarczy zainstalować TikToka i zacząć działać.

      Funkcje TikToka na Androidzie:

      • wierne oddanie emocji dzięki szybkiemu przechwytywaniu obrazu i wysokiej jakości odwzorowaniu detali oraz rysów twarzy;
      • wygodny i zrozumiały dla każdego interfejs;
      • szybkie ładowanie;
      • bogata biblioteka muzyki;
      • efekty specjalne i inne narzędzia do tworzenia kreatywnych filmów;
      • ogromne możliwości wyrażania siebie i kontaktu z osobami o podobnych zainteresowaniach na całym świecie;
      • najnowsze technologie pozwalają zamienić ulubiony smartfon w pełnoprawne studio twórcze.

      Najnowsza aktualizacja: najpopularniejsza aplikacja świata na koniec 2020 roku pojawiła się na telewizorach i przystawkach z systemem Android TV.

      Twórcy TikToka weszli na nowy rynek z zamiarem znacznego poszerzenia bazy użytkowników. Aplikacja TikTok na Android TV jest już dostępna w Google Play, choć oficjalnie pojawiła się tylko na Chromecaście z Google TV — lista obsługiwanych urządzeń będzie jednak rozszerzana.

      Strava

      Strava

      Aplikacja Strava może być świetnym towarzyszem dla osób regularnie trenujących. Program zapisuje trasy, którymi najczęściej biegasz, analizuje Twoje wyniki i porównuje je z wynikami innych użytkowników z Twojego miasta.

      Ten „tracker” zapisuje między innymi maksymalną i minimalną prędkość biegu, pokonany dystans czy spalone kalorie. Strava potrafi też generować wykresy wysokości na trasie, śledzić tempo, a nawet mierzyć tętno przy użyciu specjalnego czujnika Zephyr HxM działającego przez Bluetooth.

      Evernote

      Evernote

      Evernote to świetna aplikacja do notatek, która synchronizuje się między różnymi urządzeniami mobilnymi i komputerami.

      Evernote pozwala tworzyć notatki z zagnieżdżonymi listami i zdjęciami oraz ustawiać przypomnienia. Notatkę możesz nie tylko napisać, ale też podyktować głosem. Jeśli na przykład studiujesz, możesz nagrać wykład, zapisać go w dokumentach i mieć do niego dostęp z dowolnego urządzenia mobilnego lub komputera.

      Timehop

      Timehop

      Timehop to aplikacja mobilna, która pomaga wspominać dawne dni, pokazując stare zdjęcia i posty z Facebooka, Instagrama, Foursquare i Twittera.

      Timehop to prosta usługa pozwalająca wrócić do wydarzeń z danego dnia sprzed roku albo jeszcze wcześniej. Przypomina to koncepcję „tego dnia w historii”, ale treścią są osobiste wydarzenia z życia użytkownika. Dawne podróże ze znajomymi, imprezy i inne wydarzenia przypomną Ci, gdzie i z kim byłeś kilka lat temu, co robiłeś i o czym marzyłeś. Założyciel Timehopa, Jonathan Wegener, tłumaczy:

      „Uważamy, że tak jak zwykłe zdjęcia cyfrowe z czasem zyskują na wartości, tak większość osób aktywnie korzystających z mediów społecznościowych ma zapomniane posty i zdjęcia, do których po latach chętnie by wróciła. Dlatego celem Timehopa jest stać się takim łącznikiem między Twoją przeszłością a teraźniejszością”.

      Instagram

      Instagram

      Instagram to darmowa aplikacja pozwalająca użytkownikom dzielić się zdjęciami z innymi. Program uruchomiono pod koniec 2010 roku i z dnia na dzień zyskuje na popularności.

      Istota aplikacji polega na tym, że użytkownik robi zdjęcia urządzeniem mobilnym — tabletem czy smartfonem — następnie obrabia je wbudowanymi filtrami i publikuje w sieci Instagrama.

      Na początku istnienia aplikacja obsługiwała wyłącznie platformę iOS, a dwa lata później wydano ją na Androida. 

      W kwietniu 2012 roku Instagram trafił na telefony z Androidem i w niecały dzień pobrano go ponad milion razy. Firma była wtedy bliska nowej rundy finansowania przy wycenie 500 milionów dolarów. Systrom i założyciel Facebooka Mark Zuckerberg poznali się na wydarzeniach organizowanych na Stanfordzie i utrzymywali kontakt na początku błyskawicznego wzrostu popularności Instagrama.

      Instagram to świetna propozycja dla osób, które podróżują i lubią dzielić się ciekawymi momentami ze znajomymi. Aplikacja daje doskonałą możliwość komunikacji poprzez zdjęcia, przekazując nie tylko słowa, ale i emocje.

      Dropbox 

      Dropbox

      Dropbox to prawdopodobnie najpopularniejszy dostawca magazynu w chmurze na świecie. Chętnie korzystają z niego pracownicy biurowi, studenci i uczniowie. Niezależnie od tego, czym się zajmujesz, wygodnie jest trzymać dowolne dane w chmurze i łączyć się z nimi z kilku urządzeń.

      Aplikacja Dropbox na Androida pozwala edytować dokumenty w formatach Microsoft Office. Możesz też automatycznie zapisywać wszystkie zdjęcia i filmy z aparatu. Utworzone przez Ciebie foldery mogą być dostępne dla innych użytkowników, jeśli wyślesz im zaproszenie. Na wybranych plikach da się też pracować offline.

      eBay

      eBay

      eBay to aplikacja na Androida stworzona przez eBay Mobile. To lekki klient, który upraszcza korzystanie z usług eBaya. Użytkownik ma dostęp do ogromnego katalogu produktów podzielonych na kategorie. Czy chodzi o elektronikę użytkową, czy o stylowe ubrania — zawsze znajdziesz to, czego szukałeś. 

      Aplikacja obsługuje kody kreskowe rozpoznawane aparatem urządzenia. Do pełnego korzystania z programu potrzebne jest konto eBay. Pozwala ono robić zakupy, korespondować ze sprzedawcami, podpinać karty kredytowe i więcej. Aplikacja jest rozpowszechniana całkowicie bezpłatnie i nie wymaga wydawania pieniędzy.

      Podcast Addict

      Podcast Addict

      Podcast Addict to świetna aplikacja do podcastów. Znajdziesz tu niemal każdy podcast, jaki przyjdzie Ci do głowy. Do tego ma prosty i sprawny interfejs, mnóstwo funkcji porządkujących, wiele opcji odtwarzania i pobierania oraz płatną wersję premium. Podcasty możesz przeglądać według kategorii albo wyszukiwać pojedynczo. Możesz też ustawić reguły pobierania i łatwo tworzyć playlisty, a aplikacja obsługuje Chromecasta i SONOS oraz Android Auto i Wear OS. 

      Interfejs i ustawienia nie należą do najbardziej eleganckich, jakie widzieliśmy. Aplikacja nadrabia to jednak, trafiając dosłownie w każdy inny punkt, jaki przyszedł nam do głowy.

      YouTube i YouTube Music

      YouTube

      Bardzo podoba nam się połączenie YouTube Music i YouTube. Za jedną cenę dostajesz nieograniczoną muzykę w YouTube Music, z liczbą utworów w zupełności wystarczającą, by konkurować ze Spotify i Apple Music. 

      Dostajesz jednak także YouTube bez reklam, odtwarzanie wideo w tle i pobieranie offline. Ten pakiet dwa w jednym plasuje się obok zestawu Hulu, Disney+ i ESPN+ za 12,99 dolara miesięcznie jako jedna z najlepszych ofert streamingu wideo i audio. 

      Razem powinny pokryć w zasadzie wszystkie Twoje potrzeby w zakresie streamingu wideo i audio. Nasze jedyne zastrzeżenie to poniżej przeciętnej jakość muzyki w YouTube Music.

      Hangouts

      Hangouts

      Hangouts to wieloplatformowa aplikacja stworzona przez Google, będąca swoistą mieszanką Google+ i Google Talk. Zdążyła już zdobyć dużą publiczność i udowodnić, że może konkurować nawet z najbardziej znanymi komunikatorami mobilnymi. Hangouts stał się swego rodzaju poprawką błędów. Twórcy aplikacji starali się zachować i wzmocnić wszystkie zalety Google Talk, eliminując liczne wady tej usługi.

      Warto zaznaczyć, że twórcy stale ulepszają nie tylko funkcjonalność aplikacji, ale i jej interfejs. Hangouts ma wiele przewag konkurencyjnych. Aplikacja jest całkowicie darmowa i obsługuje nie tylko czat tekstowy, ale i wideokonferencje. Do zalet tego komunikatora należą też duży wybór emotikon oraz możliwość wysyłania zdjęć i GIF-ów. Hangouts nie tylko współpracuje z niemal wszystkimi usługami Google, ale też automatycznie synchronizuje rozmowy na wszystkich urządzeniach.

      Podsumowanie

      Nie możemy powiedzieć, że Android bezpośrednio wpłynął na wyniki biznesowe danej firmy. Efekt stworzenia aplikacji na system pokrywający około 80% rynku jest jednak wart zachodu.

      Ogólnie kluczowe elementy ich sukcesu wyglądają tak:

      1. Oszczędność czasu i pieniędzy

        Na dzisiejszym konkurencyjnym rynku trzeba stale uzupełniać aplikację o potrzebne funkcje. Tu przydaje się prosta konfiguracja Androida. Dodawanie i zmiana funkcji według potrzeb jest w nim łatwiejsza niż w iOS. Firma tworząca aplikacje na Androida bez trudu przygotuje aplikację biznesową odpowiadającą potrzebom użytkowników.

        Prosta instalacja pozwala firmie zaoszczędzić czas i pieniądze. Pomaga też skrócić TTM (time to market), by utrzymać odporność wobec rosnącej konkurencji.

      2. Duża elastyczność

        Android pomaga firmom zwiększać produktywność dzięki aplikacjom, które da się dostosować.

        Aplikacje na Androida łatwo też zintegrować z ekosystemem firmy. Są zgodne z najnowszymi technologiami, takimi jak AR, VR i IoT. Umożliwiają to elastyczność i skalowalność systemu Android. W pewnym sensie aplikacje na Androida mogą dać firmom wyższy zwrot z inwestycji (ROI).

      3. Przewaga konkurencyjna

        Na świecie działa ponad dwa miliardy urządzeń z systemem Android. To wyraźnie pokazuje znaczenie tej platformy. Jeśli firma wprowadzi aplikację na Androida, jest duża szansa, że szybko zdobędzie ona popularność. To dodatkowo podnosi wartość marki, a ostatecznie firma może odnotować wzrost sprzedaży i liczby powracających klientów.

      Oto oczywiste zalety aplikacji na Androida, które dają firmom przewagę nad konkurencją:

      • proste i sprawne wdrożenie BYOD
      • dotarcie do ogromnej publiczności
      • funkcje przyjazne biznesowi i szybkie zmiany

      10 Społeczność Androida

      Społeczność Androida jest naprawdę ogromna. Rozwinęła się dzięki popularności systemu. Popularność Androida wynika zaś głównie z tego, że jest „darmowy”. Wydanie darmowej wersji pozwoliło Google połączyć siły z wieloma czołowymi producentami sprzętu i stworzyć naprawdę „inteligentny” smartfon. Android jest też otwartoźródłowy.

      Według Statista liczba użytkowników smartfonów z Androidem w Stanach Zjednoczonych rośnie. Od 2014 roku łączna liczba użytkowników poszybowała z 87,7 miliona do 130,6 miliona w 2021 roku.

      Jeśli chodzi o samych programistów, jest ich na świecie ponad 5,9 miliona! (EvansData)

      Zejdźmy jednak do szczegółów i sprawdźmy, co ta społeczność może Ci dać.

      Największe konferencje o Androidzie

      Android Dev Summit

      Link: https://developer.Android.com/dev-summit 

      Android Dev Summit to doroczne wydarzenie poświęcone Androidowi. To miejsce, w którym programiści Android z całego świata spotykają się, żeby rozmawiać, dyskutować i wymieniać się pomysłami o tym, co kochają i czym jest Android.

      Google I/O

      Link: https://events.google.com/io/ 

      Google I / O to doroczna konferencja Google skierowana do programistów, poświęcona rozwojowi otwartoźródłowych technologii i usług Google. Odbywa się w Moscone Center (San Francisco, Kalifornia) w maju lub czerwcu od 2008 roku.

      Google I / O ma formułę podobną do wcześniejszych konferencji Google, takich jak Google Developer Day (maj 2007) i Geo Developer Day (maj 2006).

      W trakcie Google I / O odbywa się ponad 100 sesji.

      Nazwa „IO” według Google może oznaczać „Innovation in the Open” albo input/output. Do tego „I” i „O” przypominają cyfry binarne „1” i „0”.

      Droidcon

      Link: https://www.droidcon.com/

      Droidcon to nazwa sieci komercyjnych konferencji w Europie poświęconych tworzeniu oprogramowania na platformę Android. Konferencje Droidcon są największymi wydarzeniami dla programistów Android organizowanymi poza USA.

      Nadchodzące wydarzenia

      FOSDEM - Kotlin DevRoom

      Miejsce: wydarzenie wyłącznie online
      Data: 6–7 lutego 2021
      Link: https://fosdem.org/2021/schedule/track/kotlin/

      Devoxx

      Miejsce: Paryż, Francja
      Data: 30 czerwca – 2 lipca 2021
      Link: https://www.devoxx.fr/ 

      GDG DevFest

      Miejsce: Lwów, Ukraina
      Data: 4 października 2021
      Link: https://devfest.gdg.org.ua/ 

      GOTO

      Miejsce: Kopenhaga, Dania
      Data: 7–8 czerwca 2021
      Link: https://gotocph.com/ 

      Devoxx

      Miejsce: Londyn, Wielka Brytania
      Data: 1–3 listopada 2021
      Link: https://www.devoxx.co.uk/ 

      GOTO 

      Miejsce: Amsterdam, Holandia
      Data: 15–18 czerwca 2021
      Link: https://gotoams.nl/ 

      ADDC 

      Miejsce: Barcelona, Hiszpania
      Data: 23–25 czerwca 2021
      Link: https://addconf.com/2020/ 

      Droidcon 

      Miejsce: Berlin, Niemcy
      Data: 13–15 października 2021
      Link: https://www.berlin.droidcon.com/ 

      360|AnDev

      Miejsce: wydarzenie wyłącznie online
      Data: 22–23 lipca 2021
      Link: https://360andev.com/ 

      Droidcon 

      Miejsce: Nowy Jork, NY, USA
      Data: 30–31 sierpnia 2021
      Link: https://www.nyc.droidcon.com/ 

      Droidcon

      Miejsce: Londyn, Wielka Brytania
      Data: 28–29 października 2021
      Link: https://www.london.droidcon.com/

      Droidcon 

      Miejsce: San Francisco, CA, USA
      Data: 13–15 grudnia 2021

      Blogi o Androidzie warte śledzenia

      Google Developers

      Google Developers publikuje artykuły programistów, projektantów i inżynierów Google. Znajdziesz tam omówienia nowych bibliotek i narzędzi, takich jak analizator APK, a także mnóstwo porad i trików.

      Hackernoon

      Hackernoon ma wielu autorów i publikuje artykuły o dużo szerszej tematyce niż Android, na przykład o uczeniu maszynowym. Inne tematy, takie jak korzystanie z Gradle, są istotne dla programistów Android i szerszej społeczności.

      AndroidPub

      AndroidPub to kolejny serwis tworzony wspólnie przez wielu autorów. Omawiają tam konkretne zagadnienia: dlaczego nie umieszczać sprawdzeń view != null w prezenterach, jak usunąć wszystko zbędne z kodu w Kotlinie i jak używać RxJavy razem z DiffUtil.

      My Life With Android

      My Life With Android w całości dotyczy budowania architektury aplikacji. Hannes Dorfmann stworzył Mosby, żeby pomóc programistom wdrażać wzorzec MVP w aplikacjach. Pisał też o wzorcu repozytorium i znacznie rzadziej omawianym wzorcu model-view-intent (MVI).

      Square Island

      Blog prowadzi Chiu-Ki Chan, inżynierka oprogramowania z ponad 6-letnim doświadczeniem w Google. Znajdziesz tam mnóstwo porad o tworzeniu na Androida, z przykładami kodu i ilustracjami.

      An Android Developer's Blog

      Opis mówi wszystko: „Coding Android like there's no tomorrow”.

      Android Tutts

      Głównie poradniki i artykuły o Androidzie.

      Software Engineering Hipster

      Android Hipster to regularnie aktualizowany blog pełen poradników i ciekawych artykułów. Autorzy tworzą też podcasty i są aktywni na Twitterze, więc śmiało zadawaj im pytania o Androida!

      Podcasty o tworzeniu na Androida

      Fragmented

      Donn Felker i Koshik Gopal wkładają wiele pracy w to, by konsekwentnie tworzyć świetne odcinki na bardzo różne tematy związane z Androidem. Zwykle spotykają się z innymi programistami Android, żeby omawiać narzędzia, biblioteki, szablony itd. Wszystko kręci się wokół świata tworzenia na Androida.

      Android Developers Backstage

      Ten podcast pochodzi prosto od pracowników Google — prowadzą go Chet Haase i Thor Norbay z zespołu Androida w Google. Ludzie go uwielbiają, bo zwykle oferuje pogłębione spojrzenie na tematy androidowe, często z gośćmi, którzy realnie pracują nad danymi narzędziami i bibliotekami. Dlatego naszym zdaniem daje poziom zrozumienia trudny do znalezienia gdzie indziej.

      Talking Kotlin

      Talking Kotlin z Hadim Haririm to świetne źródło, jeśli chcesz dowiedzieć się więcej właśnie o Kotlinie. Obejmuje wszystko ze świata Kotlina: Kotlin na Androidzie, Kotlin Multiplatform, KotlinConf itd.

      The Context

      The Context to kolejny podcast o tworzeniu na Androida prowadzony przez społeczność — przez trio: Artema Zinnatullina, Hannesa Dorfmanna i Artura Dremova. To dobra opcja, jeśli chcesz usłyszeć, nad czym pracują i o czym myślą inni programiści ze świata Androida.

      droidkast.LIVE

      Antonio Levia ma niewielki zbiór wywiadów z innymi programistami Android, zakończonych krótkim poradnikiem.

      Andro idiots

      Jest dość nowy, ale ma już wiele odcinków i porusza bardzo różne tematy androidowe.

      Android Leaks

      Francuski podcast o tworzeniu na Androida. Nie mówimy po francusku, więc niewiele o nim wiemy, ale jest.

      Wybierz kurs tworzenia aplikacji na Androida

      The Complete Android N / Oreo Developer Course (Udemy)

      Naucz się tworzyć aplikacje na Androida 7 Nougat, budując prawdziwe aplikacje, takie jak Uber, WhatsApp i Instagram!

      Android Course & Classes Online – Learning Path (Pluralsight)

      Ten kurs zaprojektowano tak, by przeprowadzić Cię od zera do profesjonalnego doświadczenia w tworzeniu na Androida. Zapisanie się na te lekcje nie wymaga wcześniejszego doświadczenia.

      Ionic 2/ Ionic 3 – Build iOS & Android Apps with Angular (Udemy)

      Jeden z najlepszych kursów tworzenia na Androida. Przeprowadza Cię przez ścieżkę pracy z Angularem. Żeby zacząć ten program szkoleniowy, potrzebna jest podstawowa znajomość Angulara, HTML-a, JS-a i CSS-a.

      Android Developer Nanodegree Certification by Google (Udacity)

      Ten nanodegree ma pomóc Ci wykorzystać pełnię swojego potencjału w tym obszarze. Na wykładach zrobisz pierwsze kroki w tworzeniu aplikacji i publikowaniu ich w Google Play.

      The Complete Android & Java Developer Course – Build 21 Apps

      Fahd Sheraz i Paulo Dihone razem tworzą magię. Wszystkie ich kursy online mają wysokie oceny, a ten jest jednym z najlepszych poradników tworzenia na Androida.

      Eksperci od tworzenia na Androida

      Philosophical Hacker

      Matt Dupree był kiedyś wykładowcą, a dziś wnosi akademickie spojrzenie do tworzenia na Androida. Jego wpisy są wyczerpujące, a jednocześnie łatwe w odbiorze. Pisał o kryptografii, cytuje Nietzschego w krytyce „boskich obiektów” i tłumaczy, dlaczego nie używa Robolectrica.

      jeroenmols

      Jeroen Mols jest obecnie głównym programistą Android w Philips Hue. Pisał o testach jednostkowych, pokryciu kodu, ciągłej integracji i nie tylko. Udostępnił kilka swoich projektów, w tym narzędzie Wi-Fi File Transfer w Play Store, i prowadzi przydatne, popularne repozytorium na GitHubie: LandscapeVideoCamera.

      Commonsware

      Mark Murphy od dawna zgłębia tematy androidowe. Bierze na warsztat poważne zagadnienia i robi to dobrze. Zawsze możesz na niego liczyć, jeśli chodzi o omówienie zmian w najnowszych wersjach deweloperskich Androida, radzenie sobie ze szczególnie uciążliwymi problemami, takimi jak renderowanie PDF-ów, czy zagadnienia bezpieczeństwa sieciowego, na przykład przypinanie certyfikatów.

      Diego Torres Milano's blog

      Diego Torres Milano to inżynier systemów Android, zwolennik Linuksa i autor książki Android Application Testing Guide. Jest też twórcą CulebraTester i AndroidViewClient. Na tym blogu od 2006 roku dzieli się materiałami o programowaniu i testowaniu.

      Chris Banes

      Tak opisuje siebie sam autor: „Jestem inżynierem w zespole Android Developer Relations. To mój prywatny blog, a wszystkie wyrażone tu opinie są wyłącznie moje”.

      11 Android dziś i jutro

      Jako przedsiębiorca chcesz dla swojej firmy tylko tego, co najlepsze w dłuższej perspektywie, prawda?

      Jedna rada, jakiej możemy Ci udzielić, brzmi: wybierz najpopularniejszą na świecie platformę do tworzenia aplikacji mobilnych — Androida.

      Aplikacje na Androida dają kilka korzyści dla rozwoju biznesu. Zacznijmy jednak od statystyk, które są fundamentem naszego argumentu za tym, że firmowe aplikacje na Androida to sensowna opcja dziś i jutro. 

      Skoro Android 12 szykuje własny zestaw korzyści biznesowych, więc teraz jest moment, by wybrać Androida jako główne podejście do tworzenia aplikacji mobilnych w startupach.

      Ponieważ liczby najlepiej pokazują opłacalność biznesowych decyzji, zobacz ten wykres z aktualnymi udziałami platform systemowych w rynku.

      Android zdecydowanie przejął rynek globalny i stał się preferowanym wyborem wielu producentów sprzętu, a także samych użytkowników.

      Dowodów jest więcej. W trzecim kwartale 2019 roku Google Play miał prawie 3 razy więcej pierwszych instalacji aplikacji niż App Store, który w tym kwartale osiągnął 21,6 miliarda dolarów — o 11% więcej rok do roku w porównaniu z trzecim kwartałem 2018. 

      Według raportów Sensor Tower przychody Play Store w III kwartale 2019 roku wyniosły 7,7 miliarda dolarów, czyli o 24% więcej niż 6,2 miliarda w III kwartale 2018 — co uzasadnia koszt tworzenia aplikacji na Androida.Android pillar - Chart 4

      Co nowego w Androidzie

      Android 11

      W najnowszej wersji Androida trzeba wspomnieć o trzech głównych obszarach.

      Zmiany w działaniu

      To zmiany systemowe, które mogą wpływać na działanie aplikacji. Zacznijmy od zmian w uprawnieniach. W Androidzie 11 użytkownicy mogą precyzyjniej ustawiać uprawnienia do lokalizacji, mikrofonu i aparatu. Dokładniej: użytkownik może teraz przyznać dostęp do wymienionych elementów tylko jednorazowo. Dziś można przyznać aplikacji dostęp na zawsze, co oczywiście nie jest najlepsze z punktu widzenia bezpieczeństwa. Dodatkowo, jeśli użytkownik dwukrotnie odrzuci prośbę o uprawnienie, system pokaże przycisk „Nie pytaj ponownie”, żeby nie zasypywać go kolejnymi okienkami.

      Programiści muszą też zmienić sposób, w jaki aplikacja sięga po lokalizację w tle. Aplikacje nie mogą już uzyskać dostępu przez okno modalne. Zamiast tego na ekranie powinien pojawić się komunikat wyjaśniający, po co to uprawnienie, a następnie użytkownik musi samodzielnie nadać aplikacji prawa.

      Trudniej też uzyskać prawa do plików systemowych. Aplikacja musi w tym celu podać link do odpowiedniego menu systemowego, w którym użytkownik samodzielnie przyznaje dostęp do plików.

      Bezpieczeństwo

      Android 11 standardowo używa Scoped Storage. Pozwala to aplikacji prosić o dostęp tylko do konkretnych plików, a nie do całego systemu plików. Dodatkowo każda aplikacja ma w systemie osobny obszar pamięci, odizolowany od innych aplikacji. Dzięki temu żadna aplikacja nie sięgnie po pliki innej. Do obszaru bezpieczeństwa należą też uprawnienia jednorazowe i dostęp do lokalizacji w tle. 

      API

      Niektóre monitory mają wbudowane narzędzia poprawy obrazu, ale cierpi na tym szybkość przesyłu danych — pojawia się zauważalne opóźnienie. Nowe wyświetlacze z obsługą HDMI 2.1 mają automatyczny tryb niskich opóźnień (ALLM), który minimalizuje opóźnienie, wyłączając post-processing. Android 11 potrafi rozpoznać, czy telewizor obsługuje ten tryb, i zaproponuje jego włączenie przy podłączeniu. Jest to szczególnie przydatne w grach i wideokonferencjach, gdzie liczy się każda milisekunda.

      W Androidzie 11 ulepszono też API do pracy z sieciami neuronowymi oraz obsługę biometrii. Miłą nowością w tej aktualizacji będzie nowy system plików:

      „Google pracuje nad nowym — przyrostowym — systemem plików dla Androida, który zadebiutuje w przyszłych aktualizacjach. To zaawansowany odpowiednik wirtualnego systemu plików Linuksa. Pozwoli nie tylko korzystać z aplikacji w trakcie instalowania aktualizacji, ale też uruchamiać je już podczas pierwszego pobierania. Innymi słowy, żeby odpalić grę, wystarczy kliknąć przycisk pobierania w Google Play, a świat gry będzie doczytywał się stopniowo w miarę postępów” — podaje oficjalna strona.

      Jaka jest przyszłość tworzenia aplikacji mobilnych?

      Andy Rubin, jeden z twórców systemu Android, często prognozuje przyszłość Androida, a większość jego przewidywań się sprawdza. W przeszłości pracował też nad wieloma obiecującymi obszarami rozwoju sprzętu i oprogramowania. Kierunki te niemal zawsze przechodzą z fazy czysto koncepcyjnej do realnej. 

      Wcześniej Andy Rubin wyrażał podobną opinię o obecnym „królestwie AI” w świecie mobilnym. Teraz wygląda na to, że pogląd ten wreszcie się skrystalizował. Uważa on, że w przyszłości AI (w jednej, wspólnej formie) będzie obsługiwać działanie wszystkich urządzeń mobilnych na świecie. Przynajmniej tych podłączonych do wspólnej sieci.

      Jego zdaniem połączenie obliczeń kwantowych ze słabą formą AI może dać początek silnej AI, która będzie rządzić wszystkim. Rubin zajmuje się dziś zarówno obliczeniami kwantowymi (inwestuje w jedną z firm pracujących nad wdrożeniem tej technologii w zwykłych urządzeniach), jak i rozwiązaniami z obszaru AI. Obliczenia kwantowe mają, jak twierdzi, doprowadzić do wykładniczego wzrostu mocy obliczeniowej.

      Niedawno Rubin założył Playground Global, które na pierwszy rzut oka łączy cechy inkubatora biznesu i firmy doradczej. W rzeczywistości firma ta działa jednak inaczej. Nie tylko inwestuje pieniądze i doradza, ale też udostępnia całkiem duży zespół zawodowych technologów, którzy pomogą rozwiązać niemal każdy problem techniczny. Firma dostarcza autorowi pomysłu podstawowe elementy sprzętu i oprogramowania, dzięki czemu autor może skupić się nie na szczegółach, lecz na koncepcji. To rodzaj zasady modułowej, która może sprawdzić się w biznesie. 

      Rubin jest przekonany, że nie trzeba bać się pojawienia Skynetu — wszystko, co robi się dziś w obszarze AI, wychodzi na dobre. Co prawda wiele wybitnych umysłów naszych czasów się z nim nie zgadza — Hawking, Musk, Bostrom i inni. Kto ma rację, a kto nie? Osądzi przyszłość. Ale era AI wyraźnie zbliża się coraz szybciej.

      Jaka jest przyszłość Androida?

      Google aktywnie współpracuje obecnie z Samsungiem nad ulepszeniem systemu Android tak, by platforma była wygodna dla właścicieli smartfonów ze składanymi ekranami, które są przyszłością branży. Producenci zaproponowali już kilka pomysłów na usprawnienie systemu, ale zdaniem Lockheimera to zdecydowanie za mało, by uznać go za przystosowany do urządzeń składanych.

      Według Lockheimera: „Mamy jeszcze wiele do nauczenia się o tym, jak użytkownicy korzystają ze składanych smartfonów — dzięki [Galaxy Fold i Huawei Mate X]” — mówi członek ścisłego kierownictwa. — „To samo można powiedzieć o twórcach oprogramowania, którym nie mniej zależy na zrozumieniu fenomenu urządzeń w składanym formacie. Możliwe, że proces ten potrwa kilka lat, tak jak było z [aplikacjami] przystosowanymi do ekranów dotykowych”. "

      12 Podsumowanie

      Kilka faktów przemawia za tym, że każdy biznes może rosnąć szybciej, jeśli wspiera go aplikacja mobilna. 

      Każda firma potrzebuje więc aplikacji mobilnej, żeby się rozwijać. Nie umiesz tego wytłumaczyć swojemu wspólnikowi? 

      Poza budowaniem grupy odbiorców i świadomości marki aplikacja mobilna pomaga startupom mierzyć wzrost biznesu i daje przewagę konkurencyjną.

      Najlepszym wyborem będzie tu tworzenie aplikacji na Androida.

      Android i iOS rzeczywiście ostro ze sobą konkurują, a decyzja, na który postawić, bywa trudna, bo każdy ma własne zalety biznesowe. Nawet jeśli wybierzesz korzyści aplikacji na Androida zamiast iOS, zawsze możesz spróbować podejścia wieloplatformowego i objąć kilka platform, by poszerzyć zasięg.

      Gotowy, żeby tworzyć na Androida? Kolejny krok to wybór najodpowiedniejszego programisty.

      Warto wrócić do rozdziałów 7 i 8. Pamiętaj, że choć programistów Android jest wielu, znalezienie tych idealnych bywa trudne. 

      Dlatego szukaj wyłącznie bardzo doświadczonych zespołów tworzących aplikacje na Androida.

      Szukasz ekspertów od Androida, którzy zbudują Twoją aplikację? Skontaktuj się z nami. Mamy wielu konsultantów, projektantów i programistów mobilnych biegłych w każdej technologii, którzy pomogą Ci zbudować kolejny produkt mobilny.

      Podobał Ci się ten przewodnik po Androidzie? Udostępnij go, klikając przyciski poniżej.

      Dziękujemy za lekturę!

      Udostępnij ten przewodnik w mediach społecznościowych

      Pracuj z naszymi programistami Android

      Zrealizuj swoją wizję ze sprawdzonymi w boju programistami Android i konsultantami biznesowymi, idealnie dopasowanymi do potrzeb Twojego biznesu.