80 % bodů zdarma na online výuku díky naší Letní akci!
Pouze tento týden sleva až 80 % na e-learning týkající se PHP

1. diel - Úvod do Xamarin

Vitajte u kurze vývoja multiplatformových mobilných aplikácií v Xamarin a C# .NET pre začiatočníkov. Kurz predpokladá aspoň základnú znalosť C# .NET. Naučíte sa tu vytvárať natívne aplikácie pre Android, iOS a Windows. Začneme klasickou aplikáciou, ktorá nás bude vedieť pozdraviť, a postupne sa dostaneme až k využitiu databázy, fotoaparátu, kontaktov, notifikácií a načítanie obsahu z webu pomocou API.

Úvod do mobilných aplikácií

Mobilné aplikácie, rovnako ako aplikácia webové, sú dnes na vzostupe. Zamyslime sa, prečo sú tieto aplikácie tak populárne ako pre užívateľov, tak pre firmy. Je to veľmi jednoduché.

Pokiaľ si užívateľ nainštaluje našu aplikáciu, môžeme ho jednoducho informovať o novinkách, výhodách atď. Priamo na jeho telefón a tým zvýšiť šancu niečo predať. Toho by sme asi len ťažko dosiahli pomocou nejakého emailového newsletteru, ktorý používateľ väčšinou rovno vymaže bez toho, aby ho vôbec čítal. Ako bonus ešte dostaneme informácie o jeho zariadenie ako je napríklad poloha a tým môžeme zacieliť naše ponuky na konkrétne mesto / lokalitu a podľa toho aj upraviť ponuku produktov. Pre užívateľov sú mobilné aplikácie zas výhodné v tom, že väčšinu obsahu môže prechádzať off-line, napr. Pri ceste metrom.

Znie to dobre, že? Prejdime tiež k úskalia vývoja mobilných aplikácií. V súčasnosti existujú 3 platformy (Android, iOS a Windows) a pre každú z nich sa používa iný programovací jazyk.

  • Android (Java, Kotlin)
  • iOS (Swift)
  • Windows (C #)

Ak teda zákazník bude chcieť vytvoriť aplikáciu pre všetky platformy, poriadne sa pri tom asi zapotíte. Ak vás niekedy napadlo, že je zbytočné rovnakú aplikáciu písať 3x - jednu pre Android, druhú pre iOS, tretí pre Windows a ešte k tomu každú v inom jazyku, potom ste na správnom mieste.

Čo je to Xamarin

logo Xamarin

Xamarin umožňuje natívne vývoj aplikácií pre všetky platformy naraz a to s minimom skriptov pre daný OS a všetko len s použitím jazykov C# .NET a XAML. Môžeme tak zdieľať okolo 90% spoločného kódu pre všetky platformy. Že ste ešte nepočuli o XAML? Vôbec nevadí. Ako už názov napovedá, je to klasické XML s rozšírenú syntaxou (eXtensible Application Markup Language) a pomocou neho budeme riešiť dizajnové rozloženie prvkov v našich aplikáciách, ktoré "oživíme" C# skripty.

Tento výukový obsah pomáhajú rozvíjať nasledujúce firmy, ktoré možno hľadajú práve teba!

A ako to vlastne funguje? Ako som už spomínal, revolučný je práve to, že vývoj v Xamarin je natívne a pritom sa používa iba C# .NET pre všetky platformy s rozdielnymi natívnymi jazykmi. Princíp je opäť veľmi jednoduchý. Pri buildu sa projekt kompiluje na dané natívne subsystémy (Java pre Android, Swift pre iOS) a každá aplikácia tak vyzerá a správa sa, ako by bola napísaná v natívnom jazyku pre danú platformu. Iste teraz už všetci vidíme zásadné výhody Xamarin. Ďalšou nespornou výhodou je, že ak neovládame Javu alebo Swift a chceme tvoriť aplikáciu napr. Len pre Android alebo iOS, tak môžeme. Xamarin nám ponúka 5 základných druhov riešenia:

  • Xamarin.Forms (vývoj pre všetky platformy naraz)
  • Aplikácia pre Android
  • Aplikácia pre iOS
  • Aplikácia pre Android Wear
  • Aplikácia pre WatchOS

Môžeme si tak pohodlne vybrať, čo práve potrebujeme. V tomto kurze sa však zameriame najmä na vývoj v Xamarin.Forms. S ďalšími druhmi riešenie si iste každý z vás už poradia.

Upozornenie: Pre testovanie aplikácií na iOS je potrebné pracovať na MACu alebo mať s PC spárované zariadenie s iOS. Bez toho nebudete môcť iOS verzie testovať.

Inštalácia vývojového prostredia

Ako to už býva, budeme potrebovať nejaké IDE. Keďže sa jedná o Microsoft technológiu, tak nikoho asi neprekvapí, že to bude Visual Studio. Ja použijem verziu Community. Sťahovať môžete na adrese https://visualstudio.microsoft.com/cs/. Ak máte inú verziu, môžu nastať drobné odlišnosti.

Po stiahnutí spustite inštalátor. Načíta sa inštalačné stránka s nástrojmi, tam si zaškrtejte, čo budete potrebovať + Vývoj mobilných aplikácií pomocou .NET. V pravej časti ešte zaškrtnite "Inštalácia balíka Android SDK" a "IntelliCode". Ak budete chcieť tvoriť aj aplikácie pre Windows Phone, je potrebné zaškrtnúť ešte UWP (Universal Windows Platform).

Ako jediná jazyková sada je defaultne nastavená Čeština. Neviem ako vám, ale v každom IDE mi osobne Čeština vadí a nemôžem v nej nič nájsť, takže v záložke Jazykové sady si zaškrtneme angličtinu a klikneme na "inštalovať".

Inštalácia Visual Studia

Inštalácia nejakú dobu potrvá podľa vybraných funkcií a rýchlosti vášho pripojenia. V minime má Visual Studio okolo 10GB.

Príprava vývojového prostredia

Po spustení Visual Studia vyberieme "Vytvoriť nový projekt" a na ďalšej stránke "Mobilné aplikácie (Xamarin.Forms)".

Nový projekt Xamarin Forms vo Visual Studio

Na ďalšej záložke vyberieme "prázdny" a klikneme na "vytvoriť". Aj keď sme zvolili prázdny projekt, Visual Studio nám vygenerovalo celú adresárovú štruktúru pre zdieľaný kód, Android aj iOS, a ak ste nainštalovali aj UWP, tak aj pre Windows. Štruktúru si môžete prezrieť vpravo v Solution Exploreri.

Než začneme so samotným rozborom štruktúry, je potrebné doinštalovať niekoľko súčastí. Klikneme v menu na Tools -> Android -> Android SDK manager. Otvorí sa nám okno s 2 záložkami (Platforms a Tools). V záložke Platforms zaškrtneme všetko od verzie 7.0 a klikneme na "Apply Changes". Vývoj pre staršie verzie Android sa už neoplatí. Navyše Google pri publikácii aplikácie na Google Play požaduje nejaké minimálne API, ktoré je potrebné maximálne 3 roky staré. Ak budeme mať aplikáciu postavenú na staršom API, máme smolu. Ďalšou výhodou použitia novšieho API je možnosť použitia modernejších techník a viac funkcií, grafických akceleráciou atď. Vhodný výber API je dôležitou súčasťou úspešnosti samotnej aplikácie. Keď budeme stavať všetko na poslednú verziu, 80% ľudí našu aplikáciu ani nespustí, keď zas na zastarané, strýko Google nás udrie cez prsty. Je preto dobré voliť nejakú zlatú strednú cestu. Viac o tejto problematike si povieme v ďalších lekciách.

Verzia Google API v Xamarin

Prejdime na druhú záložku Tools. Tam doinštalujeme Android SDK Build Tools a Android Emulator. Časom budeme inštalovať ešte NDK a pár Google knižníc, teraz je to však zbytočné.

Inštalácia Android Tools vo Visual Studio

Teraz máme prostredie pripravené. Ak ste urobili všetko správne, malo by Visual Studio vyzerať nejako takto. Všimnite si najmä okná Warnings. Ak dostávate nejaké varovanie ohľadom SDK, malo by stačiť Visual Studio reštartovať.

Visual Studio s Xamarin

To by pre dnešok bolo všetko. V budúcej lekcii, Štruktúra Xamarin projektu a životný cyklus aplikácie , si povieme čo sa v aplikácii deje od spustenia, cez pauzu, až do ukončenia, preberieme danej metódy a rozoberieme si štruktúru Xamarin projektu.


 

Všetky články v sekcii
Tvorba mobilných aplikácií v Xamarin a C # .NET
Článok pre vás napísal Jaroslav Smrž
Avatar
Ako sa ti páči článok?
Ešte nikto nehodnotil, buď prvý!
Autor se věnuje primárně vývoji webových aplikací v .NET Core. Zajímá se také o vývoj her v Unreal Engine 4 a mobilních aplikací v Xamarin.
Aktivity (1)

 

 

Komentáre

Avatar
Jaroslav Smrž
Super redaktor
Avatar
Jaroslav Smrž:8.7.2019 20:33

Vytvořit aplikaci lze, avšak jak je v článku zmíněno, pro testování či spuštění je třeba mít spárované iOS zařízení nebo pracovat přímo na MACu. Je to z důvodu interních knihoven od Apple.

Odpovedať
8.7.2019 20:33
/* Life runs on code */
Avatar
Filip Němeček
Překladatel
Avatar
Odpovedá na Jaroslav Smrž
Filip Němeček:8.7.2019 21:08

No s tím iOS mi to je jasné, mně šlo o to, jestli lze iOS verzi Xamarin aplikace buildovat bez Macu. Co jsem teď narychlo našel, tak by právě měl být Mac potřeba, ale třeba máš novější info a proto se ptám :-)

 
Odpovedať
8.7.2019 21:08
Avatar
Jaroslav Smrž
Super redaktor
Avatar
Odpovedá na Filip Němeček
Jaroslav Smrž:8.7.2019 21:20

Promiň, špatně jsem pochopil tvůj původní dotaz. Připojení iOS je nezbytné. V některých případech, kdy je aplikace velice jednoduchá a neobsahuje žádný další specifický kód pro iOS (obsahuje pouze ten sdílený), tak je možné, že poběží i bez toho (některé základní knihovny jsou již nainstalovány), ale ve většině případů je nutnost připojení MACu.

Odpovedať
8.7.2019 21:20
/* Life runs on code */
Avatar
Alex
Redaktor
Avatar
Alex:17.7.2019 17:40

Chci se zeptat, když si naistaluju i komponenty pro WINDOWS, bude ta aplikace fungovat i pro desktop?

 
Odpovedať
17.7.2019 17:40
Avatar
Jaroslav Smrž
Super redaktor
Avatar
Odpovedá na Alex
Jaroslav Smrž:17.7.2019 18:03

Ano, při použití i Universal Windows Platform (UWP) bude fungovat na všech zařízeních s Windows, takže i na desktopu.

Odpovedať
17.7.2019 18:03
/* Life runs on code */
Tento výukový obsah pomáhajú rozvíjať nasledujúce firmy, ktoré možno hľadajú práve teba!
Avatar
Alex
Redaktor
Avatar
 
Odpovedať
17.7.2019 18:35
Avatar
Cyril Šebek
Redaktor
Avatar
Cyril Šebek:28.7.2019 16:38

Mám problém, když kliknu na Android SDK manager, vyskočí mi okno "Android SDK Configuration " v tom okně jsou 2 radio button ale, jsou kliklí jenom ve chvíli kdy na ně najedu myší, a ve chvíli kdy sjedu myší na stranu tak se odklikne a když potom kliknu na "Continue" tak se to okno zavře.

 
Odpovedať
28.7.2019 16:38
Avatar
Alex El Gharred:18. marca 12:38

Já mám ty možnosti u Nástroje > Android všechny zašedlé. Čím to může být?

 
Odpovedať
18. marca 12:38
Avatar
Odpovedá na Alex El Gharred
Michal Štěpánek:18. marca 13:34

Špatným zaškrtnutím možností při instalaci VS

Odpovedať
18. marca 13:34
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Matýsek
Člen
Avatar
Matýsek:28. júna 14:36

Moc děkuji za pěkně zpracovaný úvod :)

Odpovedať
28. júna 14:36
Nezapomínej na středníky! ;
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zatiaľ nikto nevložil komentár - buď prvý!