Uvod u UWP. Stvaranje vaše prve aplikacije Kako stvoriti aplikaciju za Windows 10

Japan je bio više nego osjetno pogođen ishodom Drugog svjetskog rata. Vlada je 1946. godine zamrznula sve osobne depozite stanovništva i uvela kartice za mnoge vrste dobara, uključujući hranu. Dvije godine kasnije, američke vlasti odlučile su...

Takvi se automobili prodaju iu Ruskoj Federaciji, unatoč činjenici da, za razliku od drugih zemalja, ovdje njihovi vlasnici ne dobivaju porezne olakšice. Naši sunarodnjaci većinom hladnokrvno tretiraju takve "modne stvari", ali BMW je u ...

Godine 1927. Giovanni Agusta umire, ostavljajući novi pothvat supruzi Gussepini i 20-godišnjem sinu Domenicu. Mladi grof volio je motocikle. A kada je do kraja Drugog svjetskog rata postalo jasno da će u Italiji samo zrakoplovna industrija ...

Čini se da su Ducati i chopper potpuno nespojive stvari. Ali ipak se netko isti vozi na kruzerima! A takvih ljudi ima mnogo. A babe za takve priče, dakle, šire - ne daj Bože koliko! Dakle, prepustiti na milost i nemilost konkurenciji cijeli ovaj segment...

Jujiro Matsuda otvorio je kovačnicu dva puta, ali su okolnosti bile takve da je posao morao biti zatvoren. Tek 1920. godine Matsuda je sa skupinom investitora u Hirošimi preuzeo bankrotiranu građevinsku tvrtku Abemaki, koja se bavila prodajom...

Ali još uvijek postoje iznimke od pravila. Toyota Land Cruiser Prado 2002 model godine, sa svojim "urbanim" stilom, u stanju je prevladati čak i ozbiljne neprohodnosti. Sama kombinacija riječi "Land" i "Cruiser" omogućuje nam klasificiranje modela kao kombinacije ...

Događaji - Subaru Impreza WRX

Stvoren da impresionira Ime Impreza dolazi od engleske riječi impress, što znači "impresionirati", "impresionirati". A dodatak WRX sugerira da je ovo jedna od najviših modifikacija modela Subaru Impreza. Po prvi put je bila...

U prosincu 1887. dječak je rođen u seljačkoj obitelji u blizini Milana, koji je od djetinjstva bio zainteresiran ne toliko za seoski rad koliko za tada modernu opremu s benzinskim motorima. Sa 15 godina Giuseppe Gilera (a to je bio on) zaposlio se u ...

Bila je prva u Japanu koja je dobila višestruki sustav ubrizgavanja goriva. Postojala je i varijanta s dizelskim motorom, koja je postala prvi takav automobil na svijetu u klasi Gran Turismo. Danas je ovaj stroj pravi klasik i predmet...

Bijela pruga - crna, i opet bijela - crna. Gore-dolje, gore-dolje. Ovo nije atrakcija u Luna parku, već život jednog od najboljih trkača Formule 1. 17. rujna 1960. u Londonu u obitelji budućeg dvostrukog svjetskog prvaka Formule 1 Gr...

Ali Suzuki nije uvijek bio motorna tvrtka. Sve je počelo prozaično i vrlo u duhu minimalističkog Japana. U malom bogom zaboravljenom selu Hamamatsu u prefekturi Shizuoka (onom istom u kojem je Soichiro Honda, osnivač još jedne...

Kako se pokazalo, sličnih su stavova pa su odmah počeli surađivati. Volvov rođendan je 14. travnja 1927., dan kada je prvi automobil nazvan Jacob napustio tvornicu u Göteborgu. Ovaj događaj označio je rođenje novog švedskog...

Mehaničari Johann Winkelhofer i Richard Jenicke u veljači 1885. pod markom Wanderer počeli su proizvoditi bicikle vlastitog, originalnog dizajna, koji su postali vrlo popularni. Kao rezultat raširene motorizacije 1902., prvi...

Renault F1 tim. Paralelno - konvergirajte! Francuska linija, prekinuta

U ranim danima Formule 1, stazama su dominirale automobilske korporacije. Alfa Romeo, Maserati, Ferrari - nitko nije sumnjao da će njihovi automobili biti favoriti. Tada su neki tvornički timovi napustili Kraljevske utrke, u zamjenu za ...

Povijest marke, ili zašto se automobili s oznakom "TRD" ne mogu smatrati običnim "Toyotama" 7. lipnja 1954. godine, kada ni Corolla ni Crown nisu bili u "arsenalu" mlade i izvan Japana nepoznate tvrtke Toyote , a Land Cruiser nije ni pomišljao nabaviti...

Vjeruje se da su u stvarnom životu pametni telefoni s Microsoft OS-om uobičajeni kao i ljudi s patronimom "Artyomovich". Čudna (blago rečeno) politika "Zle korporacije" u vezi sa sedmom i osmom familijom mobilnog operativnog sustava odvratila je mnoge korisnike od eksperimentiranja s "prozorima" za pametne telefone, a sada se korporacija ozbiljno uhvatila ispravljanja svoje slike u ovoj korisničkoj niši. Kao podzemni ljubitelj Microsofta, nadam se da će uspjeti - "desetka" hoda planetom, njen glavni adut je jedna jezgra za sve platforme, pa ima sve šanse povući dobar dio mobilnog tržišta. . A kao programer, rado ću za vas napraviti uvodni članak o razvoju za ovu mobilnu osovinu, tako da uvijek budete spremni za rast njene popularnosti :).

Pregled arhitekture

Uz zajedničku jezgru i vrijeme izvođenja za UWP aplikacije, jednom napisana aplikacija radit će na svim uređajima sa sustavom Windows 10. Ovaj raspon uključuje:

  • stolna računala;
  • poslužiteljski sustavi - OS Windows Server 2016;
  • prijenosna računala - MS Surface Book;
  • tablete - MS Surface Pro;
  • pametni telefoni - Lumia;
  • igraće konzole - Xbox One;
  • naočale za proširenu stvarnost - MS HoloLens;
  • zidni tableti - MS Surface Hub;
  • pametni sat - MS Band 2.

Popis je impresivan. Osim toga, UWP nije ograničen samo na izvršavanje aplikacijskih programa, on također podržava rad upravljačkih programa na razini jezgre. To vam omogućuje stvaranje upravljačkih programa koji rade na različitim uređajima, sve dok je određena komponenta za koju je upravljački program namijenjen ista.

UWP podržava i upravljačke programe na razini jezgre i na razini korisnika. Podsustav uključuje sučelja upravljačkog programa uređaja (DDI) koja UWP upravljački program može koristiti.

Ali sve to ne spašava programera od prilagodbe sučelja određenim platformama i rezolucijama zaslona. U nekim posebnim slučajevima to možda neće biti potrebno.

Razvojni alati

Za pisanje, uklanjanje pogrešaka, implementaciju i testiranje aplikacija za Windows 10 Mobile trebat će vam Visual Studio 2015 (bez sumnje). Ovo ljeto izašlo je treće ažuriranje. Toplo preporučam! Njegov glavni ispravak je smanjena potrošnja memorije u usporedbi s drugim ažuriranjem.

Također ćete trebati Windows 10 Anniversary Update SDK: uključuje sve potrebne alate za razvoj aplikacija za cijelu flotu uređaja koji rade na Windows 10. Ako koristite VS 2015 s trećim ažuriranjem, najnoviji SDK je već uključen.

Jedna od glavnih inovacija je Windows Ink. Pomoću ovog API-ja možete dodati podršku za olovku u dva retka koda. Za to postoje dva kontrolna objekta: InkCanvas i InkToolbar.

Novi Cortana API pojednostavljuje implementaciju glasovne kontrole. Komponenta Cortana Actions u novom API-ju omogućuje vam stvaranje novih fraza/izraza.

Windows Hello biometrijska provjera autentičnosti sada je dostupna web programerima u pregledniku Edge.

Alat za modeliranje korisničkog sučelja Blend za Visual Studio 2015 pruža naprednije mogućnosti izgradnje sučelja od VS-a. Pomoću njega možete stvoriti izglede u XAML-u za sve podržane aplikacije: aplikacije, web, univerzalne, mobilne itd. Također sadrži konstruktore za dodatne zadatke, poput stvaranja animacija i kontrole ponašanja elemenata.

Načini stvaranja aplikacija za Windows 10 Mobile

Glavni način stvaranja aplikacija za Windows 10 Mobile pametne telefone je razvoj univerzalne (UWP) aplikacije(skrolajte Visual C# → Windows → Univerzalni čarobnjaci za izradu projekta).

Međutim, nije on jedini. Kao što znate, Xamarin je ugrađen u Visual Studio 2015, također se može koristiti za izradu aplikacija za Windows 10 Mobile, kako za Android tako i za iOS, mijenjajući sučelje i ostavljajući programsku logiku u C# (Visual C# → Cross-Platform).

Osim jezika Visual C#, mogu se jednako odabrati Visual Basic ili Visual C++. VS 2015 vam omogućuje stvaranje univerzalnih aplikacija s JavaScriptom (JavaScript → Windows → Univerzalne aplikacije). Također se mogu implementirati na Windows 10 Mobile uređaj.

Alati za rad s naslijeđenim projektima

Tijekom duge povijesti operacijskog sustava Windows stvoren je ogroman broj različitih aplikacija za njega. Izlaskom Windowsa 8 i WinRT-a (i kasnije Windowsa 10 i UWP-a), stare desktop aplikacije su stvar prošlosti, jer samo Win 8 i Win 10 desktop aplikacije podržavaju klasične Win32, COM, .NET aplikacije. Ovo je rastužilo Microsoft. No, dečki su shvatili da mogu razviti pretvarač koji bi pretvorio stare aplikacije za novi napredni UWP podsustav. Rođen iz ovoga Konverter aplikacija za stolna računala.

Pretvaranje Xcode projekta proces je u dva koraka. Prvo trebate dodati isticanje sintakse Objective-C u Visual Studio: instalirajte proširenje objc-syntax-highlighting.vsix iz mape winobjc\bin. Zatim, pomoću uslužnog programa vsimporter.exe naredbenog retka, trebate pretvoriti Xcode projekt u VS projekt. Nakon toga, rezultirajuća sln datoteka može se otvoriti u studiju, gdje će biti istaknuta Objective-C sintaksa. Možete izraditi i pokrenuti aplikaciju i ona će raditi kao i svaki drugi Windows program.

Slomi me, kako je nevjerojatno vidjeti ispravno istaknuti Objective-C kod u Visual Studiju!

Za kompajliranje Obj-C koda koristi se besplatni kompajler zveket. Budući da je izlaz standardna UWP aplikacija, može se pokrenuti na mobilnom uređaju u Windows 10 Mobile okruženju. Jedan program može imati i C++ i Obj-C kod.

Ako imate projekt za prethodnu verziju Windows Phonea, tj. 8.1 (ili 8.0), kada ga otvorite u VS 2015, studio će automatski ažurirati projekt tako da ispunjava zahtjeve Universal Windows App (UWP) . Ne samo da će se oznaka korisničkog sučelja u XAML-u pretvoriti, već i programska logika u JS/C++/C#/VB zajedno s njim. Ako je u kodu bilo poziva WinRT podsustavu, oni će se pretvoriti u UWP pozive.

Postoji još jedna uobičajena vrsta aplikacije - igre. iOS i Android renderiraju kroz OpenGL sučelje niske razine. S druge strane, na Windows 10 Mobile za prikaz slika u igrama koristi se DirectX 11. To rezultira nekompatibilnošću. Ali postoji rješenje - otvoreni projekt ANGLE . ANGLE (Almost Native Graphics Layer Engine) - gotovo izvorni motor grafičkog sloja - korisnicima Windowsa omogućuje besprijekorno pokretanje OpenGL ES aplikacija na hardveru DirectX 11. To se postiže pretvaranjem poziva iz OpenGL ES API-ja u DirectX 11 API. ANGLE u potpunosti podržava sljedeće tri vrste aplikacija:

  • univerzalne aplikacije za Windows 10 (Univerzalne Windows aplikacije);
  • aplikacije za Windows 8.1 i Windows Phone 8.1;
  • klasične Windows desktop aplikacije.

O ovom pitanju se detaljnije raspravlja u mojoj knjizi “ Čarolija trenutka rotacije"(Opet promovirate svoju knjigu! Pa, u redu, zaslužujete to. - Pribl. ur.).

Nastavak dostupan samo članovima

Opcija 1. Pridružite se zajednici "site" kako biste pročitali sve materijale na stranici

Članstvo u zajednici tijekom navedenog razdoblja omogućit će vam pristup SVIM hakerskim materijalima, povećati vaš osobni kumulativni popust i omogućiti vam da skupite profesionalnu ocjenu Xakep Score!

Do danas je razvoj aplikacija za Windows 10 Mobile jedno od područja koja najviše obećavaju.

Mnogi se programeri prekvalificiraju i sami svladavaju ovo područje svoje djelatnosti.

Druge obučava tvrtka za koju rade. U svakom slučaju smjer je izvrstan i svakako ga se isplati raditi.

Stoga ćemo analizirati korake koje je potrebno poduzeti.

Sadržaj:

Uvodne informacije

Ovisno o tome jeste li prije radili bilo kakav razvoj, bit će vam lakše ili teže razumjeti sve o čemu će biti riječi u nastavku.

Usredotočit ćemo se na one ljude koji su tek počeli shvaćati osnove.

Možda ste išli na fakultet ili pohađali neke tečajeve za.

Ako je tako, ovaj vodič je za vas.

Prelazimo izravno na temu razvoja.

Microsoftovi programeri učinili su vrlo zgodnu stvar prije nekoliko godina. Stvorili su takozvane univerzalne aplikacije, odnosno razvojno okruženje za njih.

Prikladni su za apsolutno sve uređaje koji rade na.

Na slici 1, ono što je gore napisano prikazano je u dijagramu.

Samo postojanje univerzalnih primjena temelji se na pojmu UWP (univerzalna Windows platforma)).

Takvi programi (Universal Apps) prikladni su za različite uređaje - računala, mobilne uređaje i tako dalje.

Ujedinjuju ih sljedeće komponente:

  • Prilagodljivo korisničko sučelje- prilagodljivo sučelje, odnosno takav izgled programa koji se može samostalno mijenjati ovisno o uređaju na kojem radi;
  • Prirodni korisnički unos– skup uređaja za unos podataka, poput mikrofona, olovke i slično;
  • Jedan SDK + alat- univerzalno razvojno okruženje za različite uređaje i popratni set alata;
  • Jedna trgovina + jedan razvojni centar- jedna trgovina iz koje možete nabaviti aplikacije za različite uređaje i jedan razvojni centar;
  • Usluge u oblaku- zahvaljujući kojima možete organizirati zajednički proces razvoja ili jednostavno pohraniti programe i datoteke na jedno mjesto, dostupno s različitih gadgeta.

Zahvaljujući ovom pristupu, možete ozbiljno optimizirati svoj rad.

Njegova glavna prednost je što ne morate pisati, na primjer, 2 odvojena i.

Napišete jedan program, a on se sam prilagođava uređaju na kojem radi.

Stoga takva stvar kao zaseban program za Windows 10 Mobile danas u načelu ne postoji.

Umjesto toga, postoji UWP.

Važno je napomenuti da kada je Windows Phone OS (operativni sustav koji je prethodio Win Mobileu) bio u upotrebi, ovaj pristup nije bio predviđen. Morao sam napraviti program za računalo, a zatim ga pokušati prenijeti (drugim riječima, prilagoditi) za . Iako je u velikoj većini slučajeva bilo potrebno razvijati se od nule. Kao što možete zamisliti, bilo je izuzetno nezgodno.

Srećom, sada se sve promijenilo i imamo univerzalni način programiranja.

Sada prijeđimo na praksu.

Načini razvoja za Windows 10 Mobile

Na temelju navedenog može biti tri načina za pisanje programa za Windows 10 Mobile:

više platformi. U softverskom okruženju vizualni studio (ovo je jedan od razvojnih alata o kojem ćemo govoriti u sljedećem odjeljku) postoji takva komponenta, poput Xamarina . Dakle, zahvaljujući njemu, moguće je razviti programe za Windows 10 Mobile i istovremeno. Prije programera će biti tri zaslona u kojima može promijeniti sučelje svoje kreacije. A programska logika ostat će nepromijenjena. Koristi ga C#.

ostalo. Teoretski, iako će ovo biti prilično problematično, za naš cilj možemo koristiti I . Ovi programski jezici sada se smatraju zastarjelima (više ili manje aktivno se koriste samo Osnovni, temeljni ). Ali još uvijek se mogu koristiti.

Kao što vidite, prvi način je optimalan, pogotovo kada je u pitanju početnik majstor koda.

Stoga ima smisla shvatiti koji će alati biti potrebni za izradu programa na ovaj način.

Što vam je potrebno za razvoj - proučavamo alat

Sve ovo morat ćete odmah preuzeti kako biste počeli stvarati! Recimo samo da je sve tu. Microsoft.

Dakle, evo što vam je potrebno:

vizualni studio. Ovo je razvojno okruženje. U njemu ćete napisati kod, vidjeti izgled buduće aplikacije, kompajlirati je (drugim riječima pokrenuti) i tako dalje. preuzimanje datoteka VS dostupno na visualstudio.com. Postoje 3 verzije - Zajednica, profesionalci i poduzeća . Prvi je besplatan i ima minimalnu funkcionalnost. Ali to je sasvim dovoljno da se uključite u razvoj pod Windows 10 Mobile . Preostala dva su plaćena i imaju značajno proširenu funkcionalnost.

Windows 10 Anniversary Update SDK. Ovo je ažurirani paket alata potrebnih za razvoj cijelog niza gadgeta koji rade na Windows OS-u. 10. Možete ga preuzeti s developer.microsoft.com. Ovu komponentu samo treba instalirati nakon preuzimanja. Automatski će se "ugraditi". VS.

Početnicima će biti sasvim dovoljnoVisual Studio zajednica u kombinaciji sa Windows 10 Anniversary Update SDK.

Važno! Svakako provjerite sistemske zahtjeve vizualni studio . Moguće je da vaše računalo neće pokretati verziju 2017. Na istoj stranici možete pronaći starije verzije. VS.

U budućnosti, kada savladate osnovne osnove, također možete pokušati koristiti Blend za Visual Studio.

Ali to je relevantno samo ako koristite vizualni studio nije 2017, nego starija verzija.

U VS 2017. takav alat jednostavno nema smisla. Od njega se uzima ono najbolje.

Licenca za programere i otključavanje

U našem slučaju potrebna je i licenca programera. Ovo je istina ako radite na

Ali će se automatski dobiti prilikom sastavljanja prve aplikacije.

Dakle, ne morate učiniti ništa dodatno.

Više pažnje treba posvetiti otključavanju uređaja. Ubuduće da bi instalirali aplikacije bez licence (što si i sam napisao, još je ne mogu imati dok se ne provjere i nisu u trgovini), morat ćete izvršiti neke radnje.

Posebno morate učiniti sljedeće:

  • Koristite pretraživanje za pronalaženje Jelovnik " Ažuriranje i sigurnost» ("Ažuriranja i sigurnost" ako je na ruskom).
  • Nalazi se u izborniku s lijeve strane uzimaš " Za programere» ("Za programere").
  • Kvačica u blizini natpisa « razvojni način rada» ("Način za razvojne programere").

Ponekad, ako ne izvršite ovu jednostavnu radnju, postoje problemi s daljnjim radom.

Primjer prijave - "Hello World"

Dakle, da biste napisali svoju prvu prijavu, napravi to:

1 Pokrenite instalirani Visual Studio. Vi uzimate "Datoteka", onda "Stvoriti" I "Projekt".

2 će se otvoriti Prozor za izradu projekta. Kliknite na ploču s lijeve strane "Nauspostavljena» , zatim kliknite "Visual C++» (za sada ćemo koristiti ovaj jezik) i dalje paragraf"Univerzalne aplikacije za Windows» .

3 U središnjem dijelu otvorenog prozora ostavite sve kako jest. Mora se izabrati stavka "Prazna prijava ...".

4 Na dnu, enter naziv projekta, mjesto izvora i naziv prečaca.

5 Pritisnite "U REDU" u gornjem lijevom kutu.

6 Na ploči s lijeve strane pronaći ćete popis svih datoteka projekta. Ne ulazeći u detalje, recimo da je kod zapisan u datoteci s nastavkom .xaml. U našem slučaju, ovo je "MainPage.xaml". Otvorite ga i u središnjem dijelu pojavit će se okvir s kodom.

  • - element "StackPanel". » je vrsta spremnika za druge elemente, ovdje navodimo njegovu duljinu i visinu;
  • Hello World" i font 36;
  • - tekstualni blok s riječima " Kako se zoveš?";
  • - drugi StackPanel s vlastitim postavkama;
  • - polje za unos teksta;
  • - zatvaranje prvog StackPanel;
  • - zatvaranje drugog StackPanel.
"Programiranje za mobilne uređaje sa sustavom Windows Mobile" A. Klimov . To je već ono što je potrebno izravno za pisanje koda. Međutim, knjiga je malo zastarjela i objavljena je 2009. godine. Ali osnovni principi ostali su nepromijenjeni.
  • Materijali stranice metanit.com. Postoji, zapravo, online poduka o UWP . Ovo je ono što vam treba. Moći ćete postupno proučavati sve detalje razvoja koji planirate učiniti.
  • Evo videouputa. Vrlo zgodna opcija za one koji više vole gledati lekcije nego čitati knjige. U nekoliko lekcija shvatit ćete osnove i raditi sami.
  • Recimo da ste sve ovo pročitali. Pitanje je što je sljedeće.

    Što učiniti za vježbanje?

    Što je sljedeće

    Ako vidite da ste dobri u tome, preuzimajte zadatke s freelance burzi.

    S vremenom ćete moći otići u neku od tvrtki i zatražiti testni zadatak.

    Možda će firma biti mala, ali i ovo je iskustvo, i to jako dobro.

    Ako dobro riješiš test, ubuduće će te moći sami podučavati i zadavati ti druge zadatke.

    Ovako se postaje profesionalni programer!

    Za one koji sumnjaju trebaju li instalirati Windows 10 na svoje omiljeno računalo ili ne, nudimo kratki pregled materijala o platformi, razvojnim alatima i novim značajkama dostupnim u razvoju aplikacija.

    Mislim da svi već znaju gdje i kako nabaviti svoju kopiju sustava Windows 10 - nećemo se zadržavati na ovom trenutku. Instalacija je slična instalaciji Windows 8. Ako namjeravate ažurirati sustav, toplo preporučujem da napravite sigurnosnu kopiju datoteka sa sistemskog diska.

    Alati

    Koji se razvojni alati mogu koristiti? Trebat će vam novi MS Visual Studio 2015. Sada su dostupni besplatni Visual Studio 2015 Community Edition i plaćena Professional i Enterprise izdanja.

    Tečaj opisuje glavne značajke platforme, modele i alate dostupne za izradu Windows aplikacija. Razmatra se nekoliko glavnih scenarija koji su implementirani u aplikaciji: rad s malom količinom memorije, izvršavanje zadataka u pozadini, komunikacija između uređaja, upravljanje datotekama i podacima te metode interakcije s korisnikom.

    Licenca i otključavanje uređaja

    Kao i kod razvoja sustava Windows 8/8.1, potrebna je licenca razvojnog programera. Dobiva se na isti način kao licenca za razvojne programere za Windows 8/8.1 prilikom izrade prvog projekta izravno u Visual Studiju (ovo nije isto što i račun za objavljivanje u trgovini). Za instaliranje aplikacija na uređaje, ne zaboravite ih otključati:

    Univerzalne primjene

    Što je novo za programera? Najavljeno je da se univerzalna aplikacija može pokrenuti na bilo kojoj platformi Windows 10. Ovo je implementirano kroz sustav različitih API-ja. To jest, postoji API sloj zajednički svim platformama (Universal Windows Platform, UWP). Ako aplikacija koristi samo svoje značajke, radit će na svim UWP platformama.


    Zbirka trenutno uključuje sljedeće predloške projekata:

    • Prazna aplikacija, glavni XAML projekt s jednom stranicom. Slično standardnoj praznoj aplikaciji uključenoj u Windows 10 SDK, ali bez telemetrije Application Insights.
    • Aplikacija SplitView, projekt aplikacije s više stranica s responzivnom kontrolom SplitView.
    • Composition App, projekt koji ne koristi standardnu ​​biblioteku komponenti, umjesto toga koristi Windows.UI.Composition API,
    • Composition XAML App, projekt koji koristi XAML i Windows.UI.Composition API.


    
    Vrh