Image
11.6.2015 0 Comments

Vývoj pre Windows 10 – Vývoj univerzálnych aplikácií / 1. časť

Späť na úvod >> Späť na programovanie >> Späť na seriál

Windows 8.1 umožnil vytváranie univerzálnych aplikácií pre platformy Windows a Windows Phone, pričom s výnimkou špecifík používateľského rozhrania bolo možné využívať spoločný kód aj na lokálne databázy. Windows 10 ide ďaleko nad rámec spomínaných možností a prináša nový aplikačný model Universal Windows Platform (UWP).

Ten sprístupňuje vrstvy API naprieč zariadeniami. Je unifikovaný pre všetky podporované platformy od mikrokontrolérov v rámci IoT (internetu vecí) cez smartfóny, tablety, PC, hernú konzolu Xbox, nástenné zariadenie s veľkoplošnou obrazovkou Surface Hub až po holografické okuliare HoloLens.

V praxi to znamená, že vytvoríte jediný balíček na distribúciu aplikácie, ktorá môže byť inštalovaná na širokom spektre zariadení. Zjednotená je aj distribúcia cez spoločný aplikačný obchod Windows Store.

Jeden aplikačný model pre všetky platformy

Unifikácia aplikácie pre rôzne platformy s rôznou veľkosťou displeja a rôznou filozofiou používateľského prostredia však predpokladá splnenie určitých požiadaviek. V praxi by to malo znamenať, že používateľ bude mať pocit, že vaša aplikácia je šitá práve na mieru jeho zariadeniu. Ak to zovšeobecníme, vaša aplikácia by mala byť šitá na mieru každému zariadeniu a byť schopná v maximálnej miere využiť jeho jedinečné vlastnosti. Preto sú k dispozícii jedinečné API pre jednotlivé typy zariadení, ktoré rozširujú garantovanú vrstvu API. Môžete napísať podmienečný kód na prístup k týmto jedinečným rozhraniam API, aby sa využili len na danom type zariadení. Adaptívne ovládacie prvky používateľského rozhrania a panely s flexibilným novým rozložením prvkov vám umožnia prispôsobiť používateľské rozhranie aplikácie pre široké spektrum zariadení s rôznou veľkosťou a rozlíšením displeja. Vývojári teda už nebudú cieliť aplikácie na operačný systém, ale na jedno alebo viac druhov zariadení.

Rodiny zariadení

Rodina zariadení je množina rozhraní API pre konkrétny konštrukčný faktor zariadení (smartfón, tablet...), ktoré majú názov a číslo verzie. Dedí vlastnosti od rozhrania API univerzálnej rodiny zariadení a rozširuje ich. To zaručuje, že API univerzálneho zariadenia bude dostupné na každom prístroji.

VývojWin104.png

Princíp dedenia vlastností od rozhrania API univerzálnej rodiny zariadení

Každý potomok, teda rodina konkrétnych zariadení pridáva k zdedeným vlastnostiam a funkciám svoje špecifické. Pritom je zaručené, že tieto vlastnosti a funkcie budú dostupné na akomkoľvek zariadení príslušnej rodiny. Výhoda takejto hierarchie rodín zariadení je v tom, že vaša aplikácia môže bežať na akejkoľvek, prípadne všetkých rodinách zariadení. Adaptívny kód dynamicky deteguje a používa funkcie zariadenia z konkrétnej rodiny, ktoré sú mimo univerzálnej rodiny zariadení.

Rozhodnutie o tom, na ktoré rodiny zariadení bude vaša aplikácia cieliť, je na vás, závisí to od jej účelu. Snažte sa pokryť čo najviac funkcionality z API univerzálnej rodiny. Podľa toho vaša aplikácia obsiahne väčší alebo menší počet zariadení. Ak bude využívať len API univerzálnej rodiny, bude k dispozícii pre všetky zariadenia. Platí to aj opačne, čím viac funkcií musí byť volaných podmienečne, tým musíte aplikáciu urobiť adaptívnejšou, aby takisto mohla bežať na širokej škále zariadení. Aplikácia, ktorá sa zameriava na špecifické vlastnosti rodiny zariadení IoT, môže bežať len na týchto zariadeniach.

Môžete sa snažiť o tri druhy stratégie.

Maximalizácia dosahu vašej aplikácie. Ak chcete obsiahnuť maximálny rozsah zariadení, logicky musíte využívať iba funkcie rozhrania API univerzálnej rodiny zariadení. Tie zdedili všetci potomkovia, teda užšie zamerané rodiny zariadení. Iný, prácnejší, ale oveľa lepší spôsob je adaptovať aplikáciu pre všetky rodiny s používateľským rozhraním, teda desktop, mobile, Xbox.

Cielenie na jeden druh zariadenia. Ak sa chcete úzko špecializovať na jednu rodinu zariadení, povedzme na PC alebo hernú konzolu Xbox, môžete v plnom rozsahu využívať funkcie API pre vybrané rodiny zariadení.

Cielenie na podmnožinu zariadení. Môžete aplikáciu zacieliť povedzme na desktop a mobil, prípadne desktop, Xbox a Surface Hub. Typický príklad je graficky náročná hra, ktorá by bola veľkou záťažou pre grafický subsystém a batériu mobilného zariadenia.

UI a univerzálny vstup

Aplikácia UWP môže bežať na rôznych druhoch zariadení, ktoré majú rozličné formy vstupu, rôzne rozlíšenie obrazovky, hustotu pixelov a ďalšie jedinečné vlastnosti. Windows 10 poskytuje nové univerzálne ovládacie prvky, rozvrhnutie panelov a nástrojov, ktoré vám pomôžu prispôsobiť používateľské rozhranie pre zariadenia, na ktorých bude aplikácia bežať. Napríklad ovládací prvok Pivot, ktorý bol predtým k dispozícii len pre Windows Phone, je teraz k dispozícii pre všetky univerzálne zariadenia.

Čo potrebujete na vývoj aplikácií pre Windows 10

Aby ste mohli robiť praktické príklady, potrebujete mať vhodne nakonfigurovaný vývojársky počítač. Na reálny alebo virtuálny počítač si nainštalujte poslednú zostavu Windows 10 preview a vývojové prostredie Visual Studio 2015. V čase písania článku to bola zostava Windows 10075 a Visual Studio 2015 Release Candidate. Pri inštalácii Visual Studia sa uistite, že máte zaškrtnutú položku Universal Windows App Development Tools a emulátory pre mobilné platformy. Ešte predtým skontrolujte v BIOS-e vývojárskeho počítača, či máte povolenú podporu virtualizácie. Bez nej vám nebudú fungovať emulátory.

vyvojw101.png

Kľúčový dialóg pri inštalácii

Vytvorenie nového projektu

Všimnite si, že v ponuke šablón projektov je v zložke UniversalApp jediná položka. Na rozdiel od predchádzajúcej verzie Visual Studia tu už nie sú šablóny projektov pre Windows Phone, Xbox či IoT. Vo verzii Preview máte k dispozícii šablónu prázdnej aplikácie BlankApp. Projekt zatiaľ obsahuje iba jedinú stránku používateľského rozhrania v súbore MainPage.xaml.

vyvojw102.png

Vytvorenie nového projektu UWP

K dispozícii máte nové kontajnerové prvky, napríklad RelativePanel a SplitView, ktoré umožňujú prispôsobiť v nich zapuzdrené ovládacie prvky rozmerom a rozlíšeniu displejov rôznych zariadení, na ktorých môže vaša aplikácia potenciálne fungovať. V náhľadovej verzii zatiaľ tieto prvky nie sú k dispozícii v toolboxe na vizuálny návrh. Môžete ich však vložiť priamo do kódu XAML.

Zobrazenie náhľadu na rôznych zariadeniach

Pri návrhu a ladení jednotlivých stránok používateľského rozhrania si môžete priebežne skontrolovať, ako budú zobrazené na displejoch rôznych zariadení. Môžete sa zároveň prepínať medzi režimom na šírku a na výšku. Aplikácie môžete spúšťať na vývojárskom počítači, emulátoroch aj na pripojených reálnych zariadeniach. Okrem emulátorov zabudovaných vo Visual Studiu si môžete stiahnuť ďalšie z webu.

vyvojw105.png

Zobrazenie náhľadu rôznych zariadeniach

Spustenie aplikácie

Pri pokuse o spustenie aplikácie pre Windows 10 na lokálnom alebo vzdialenom počítači sa vám zobrazí dialóg s oznamom: Enable developer mode for Windows 10. Aby ste mohli ladiť aplikácie pre Windows 10 na lokálnom počítači alebo emulátore, treba zariadenie prepnúť do vývojárskeho módu. Najjednoduchší postup je takýto:

  • Spustite regedit
  • Vytvorte register typu DWORD a nastavte jeho hodnotu na 1 HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock\AllowAllTrustedApps
  • Vytvorte register typu DWORD a nastavte jeho hodnotu na HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock\AllowDevelopmentWithoutDevLicense

vyvojw104.png

Povolenie vývojárskeho módu pre Windows 10

Po úspešnom spustení prvej aplikácie pre Windows 10, ktorá nič nerobí ani nič nezobrazuje, máte istotu, že máte správne nainštalované a nakonfigurované nástroje na vývojárskom počítači a môžete sa pustiť do študovania problematiky a vývoja reálnych aplikácií. Viac sa o architektúre a princípoch vývoja aplikácií pre Windows 10 využívajúcich Universal Windows Platform (UWP) dozviete v ďalšej časti seriálu.

 

Zobrazit Galériu

Nechajte si posielať prehľad najdôležitejších správ emailom

Mohlo by Vás zaujímať

Ako na to

Ako zbaviť fotky hmly

08.12.2016 11:59

Hmla alebo dym sú často veľmi kreatívne nástroje. No všetkého veľa škodí. Fotka potom stráca kontrast a v podstate na nej nič nevidieť. Hmlu môžete neraz následnými úpravami odstrániť alebo zredukovať ...

Ako na to

Užitočné SW nástroje

08.12.2016 11:53

AllDup v4.0.3 Určenie: program na vyhľadávanie a odstraňovanie duplicitných súborov Vlastnosti: duplicitné súbory sa vyhľadávajú len na zvolených diskových jednotkách alebo len v rámci vybraných ...

Ako na to

Fotografovanie s bleskom

08.12.2016 11:47

Ak máte moderný fotoaparát so vstavaným alebo externým bleskom, zdá sa vám téma článku triviálna. Jednoducho nastavíte vhodný režim, vyberiete najlepšiu kompozíciu záberu, exponujete a o zvyšok sa už ...

Žiadne komentáre

Vyhľadávanie

Kyocera - prve-zariadenia-formatu-a4-s-vykonom-a3

Najnovšie videá