Smartphone-urile și tabletele sunt, fără îndoială, regii pieței de consum. Computerele tradiționale nu vor dispărea în curând, mai ales în lumea afacerilor, dar în multe scenarii dispozitivele mobile au înlocuit vechea abordare "mouse-ul și tastatura" cu o abordare mai modernă și mai intuitivă, bazată pe interfețe touch și naturale. Sigur, iPhone-ul de către Apple a fost produsul care a forțat toate celelalte companii să-și regândească experiența mobilă: în primul rând, cu un nou concept de telefon și, în al doilea rând, cu ideea de aplicații și magazine de aplicații. Aceste zile, unul dintre considerentele cheie atunci când alegeți un nou telefon este disponibilitatea și calitatea aplicațiilor, mai degrabă decât doar caracteristicile oferite de platformă. Dezvoltatorii joacă un rol important în acest sens.
Microsoft s-ar fi putut alătura partidului puțin târziu, dar a făcut-o cu o abordare proaspătă și nouă. Microsoft a dezvoltat Windows Mobile 7 când și-a dat seama că telefonul nu ar fi un produs atrăgător pentru consumatorii care începuseră să se obișnuiască cu dispozitive iPhone sau Android. Deci, dezvoltatorii săi au abandonat proiectul și au început de la zero pentru a construi o platformă complet nouă: Windows Phone 7. Rezultatul a fost într-adevăr diferit de ceilalți concurenți: o nouă interfață cu utilizatorul, bazată pe un stil de design plat numit stil Microsoft Design Metroul); și integrarea profundă cu rețelele sociale și cu toate serviciile Microsoft, cum ar fi Office, SkyDrive și Xbox.
Versiunea curentă a platformei (care va fi acoperită în această serie) este Windows Phone 8; în mijloc, Microsoft a lansat o actualizare numită Windows Phone 7.5, care a adăugat multe noi caracteristici ale consumatorilor, dar, mai mult, a îmbunătățit experiența dezvoltatorilor prin adăugarea multor API-uri noi.
Windows Phone 8 este un început proaspăt pentru platformă: Microsoft a abandonat vechiul teanc de tehnologii utilizate în Windows Phone 7 (kernel-ul Windows Mobile, Silverlight, XNA) pentru a îmbrățișa noile caracteristici introduse în Windows 8, cum ar fi noul kernel, Windows Runtime și suportul codului nativ (C ++).
Din acest motiv, Windows Phone 8 nu este disponibil ca o actualizare pentru dispozitivele Windows Phone 7 vechi. Pentru a ajuta utilizatorii în tranziție, Microsoft a lansat o actualizare intermediară numită Windows Phone 7.8, care a porționat unele dintre noile caracteristici Windows Phone 8 (cum ar fi noile formate de plăci) la dispozitivele vechi.
De la lansarea Windows Phone 8, Microsoft a lansat trei actualizări:
Vorbind despre hardware-ul este important, deoarece este strict legat de experiența de dezvoltare și de caracteristicile pe care le puteți utiliza în timp ce dezvoltați o aplicație. Cu Windows Phone, Microsoft a introdus o abordare care este un hibrid între Apple și Google.
Ca și Android, Windows Phone poate rula pe o gamă largă de dispozitive, cu factori de formă diferiți și capabilități hardware. Cu toate acestea, Microsoft a definit un set de linii directoare hardware pe care toți producătorii trebuie să le urmeze pentru a construi un dispozitiv Windows Phone. În plus, furnizorii nu pot personaliza interfața cu utilizatorul sau sistemul de operare; toate telefoanele, indiferent de producător, oferă aceeași experiență familiarizată cu utilizatorul.
În acest fel, Windows Phone poate obține cele mai bune rezultate din ambele lumi: o gamă largă de dispozitive înseamnă mai multe oportunități, deoarece Windows Phone poate funcționa bine pe dispozitive ieftine și mici, în același mod în care funcționează bine pe telefoane puternice și de înaltă rezoluție. Un hardware mai controlat, în schimb, face viața dezvoltatorilor mult mai ușoară, pentru că ei pot conta întotdeauna pe caracteristici cum ar fi senzori sau GPS.
Iată caracteristicile cheie ale unui dispozitiv Windows Phone 8:
Windows Runtime este noul layer API pe care Microsoft la introdus în Windows 8 și este baza unei abordări noi și mai moderne a aplicațiilor în curs de dezvoltare. De fapt, spre deosebire de cadrul .NET, este un strat nativ, ceea ce înseamnă o performanță mai bună. În plus, suportă o gamă largă de API-uri care acoperă multe dintre noile scenarii care au fost introduse în ultimii ani: geolocație, senzori de mișcare, NFC și multe altele. În final, este potrivit pentru scenarii asincrone și multi-threading care sunt una dintre cerințele esențiale ale aplicațiilor mobile; interfața cu utilizatorul trebuie să fie întotdeauna receptivă, indiferent de operația pe care o execută aplicația.
Sub capota sistemului de operare, Microsoft a introdus Windows Phone Runtime. Comparativ cu versiunea originală Windows Runtime, acesta nu are anumite caracteristici (în special, toate API-urile care nu au prea mult sens pe un telefon, cum ar fi API-urile de tipărire), dar adaugă mai multe noi specifice platformei (cum ar fi integrarea hub-ului, acces la întâlniri etc.).
Microsoft sa confruntat cu o provocare în timpul dezvoltării Windows Phone 8: deja a fost lansat un număr mare de aplicații pe Windows Phone Store, bazate pe tehnologiile "vechi" precum Silverlight și XNA. Pentru a evita forțarea dezvoltatorilor să-și scrie aplicațiile de la zero, Microsoft a introdus trei caracteristici:
Ca și Windows Runtime complet, Windows Phone 8 a adăugat suport pentru C++ ca limbaj de programare, în timp ce Stratul WinJS, care este o bibliotecă care permite dezvoltatorilor să creeze aplicații Windows Store folosind HTML și JavaScript, lipsește. Dacă doriți să dezvoltați aplicații Windows Phone folosind tehnologii web, va trebui să vă bazați pe Browser web control (care încorporează o vizualizare web în aplicație) și utilizează funcțiile oferite de cadre ca PhoneGap.
Această serie va acoperi dezvoltarea utilizând C # ca limbaj de programare și XAML ca limbă de interfață cu utilizatorul. Nu vom vorbi despre C ++ sau VB.NET (API-urile disponibile sunt aceleași, astfel că va fi ușor să reutilizați cunoștințele dobândite prin citirea acestei serii). În plus, din moment ce această serie este despre Windows Phone 8, voi acoperi doar API-urile Windows Runtime. În zonele în care API-urile sunt duplicate (ceea ce înseamnă că există atât Windows Runtime, cât și .NET pentru Windows Phone API-uri pentru a realiza aceeași sarcină, cum ar fi stocarea sau senzorii), voi acoperi doar Runtime-urile Windows.
Platforma oficială de dezvoltare a aplicațiilor Windows Phone este Visual Studio 2012, deși suportul a fost adăugat, de asemenea, versiunilor comerciale Visual Studio 2013. Diferența majoră este că, în timp ce Visual Studio 2012 încă vă permite să deschideți și să creați proiecte Windows Phone 7, Visual Studio 2013 poate fi utilizată numai pentru a dezvolta aplicații Windows Phone 8.
Nu există diferențe între cele două versiuni atunci când vorbim despre dezvoltarea Windows Phone: deoarece SDK este același, veți obține aceleași caracteristici în ambele medii, deci vom folosi Visual Studio 2012 ca referință pentru această serie.
Pentru a începe, va trebui să descărcați setul de instrumente Windows Phone 8 SDK din portalul oficial de dezvoltare. Această descărcare este potrivită atât pentru noii dezvoltatori, cât și pentru dezvoltatorii Microsoft care au deja o versiune comercială a Visual Studio 2012. Dacă nu aveți deja instalat Visual Studio, instalarea va instala versiunea gratuită Express; altfel, va instala pur și simplu SDK-ul și emulatorul și le va adăuga la instalarea Visual Studio existentă.
De asemenea, instalarea va fi instalată Blend pentru Windows Phone, un instrument realizat de Microsoft special pentru designeri. Este un editor vizual XAML care facilitează crearea unei interfețe de utilizator pentru o aplicație Windows Phone. Dacă sunteți dezvoltator, probabil veți petrece mai mult timp scris manual XAML în editorul Visual Studio, dar poate fi un companion valabil atunci când vine vorba de lucruri mai complexe cum ar fi crearea animațiilor sau gestionarea stărilor vizuale ale unui control.
Pentru a instala setul de instrumente Windows Phone 8 veți avea nevoie de un computer Windows 8 Pro sau Windows 8 Enterprise pe 64 de biți. Acest lucru este necesar, deoarece emulatorul se bazează pe Hyper-V, care este tehnologia de virtualizare Microsoft care este disponibilă numai în versiuni profesionale de Windows. În plus, există o cerință hardware: CPU-ul dvs. trebuie să suporte Traducerea de nivel 2 de nivel (SLAT), care este o caracteristică CPU necesară pentru ca Hyper-V să ruleze corect. Dacă aveți un calculator mai nou, nu trebuie să vă faceți griji; practic toate arhitecturile de la Intel i5 și o susțin. În caz contrar, veți putea să instalați și să utilizați SDK-ul, dar veți avea nevoie de un dispozitiv real pentru testarea și depanarea.
Puteți utiliza un instrument gratuit numit Machine SLAT Status Check pentru a afla dacă CPU-ul dvs. îndeplinește cerința SLAT.
Testarea și depanarea unei aplicații Windows Phone pe un dispozitiv înainte de a o trimite la Windows Phone Store este o cerință; numai pe un telefon real, veți putea testa performanța reală a aplicației. În timpul dezvoltării zilnice, utilizarea dispozitivului vă poate încetini. Acesta este momentul în care emulatorul este util, mai ales pentru că veți putea să testați cu ușurință diferite condiții (cum ar fi rezoluții diferite, pierderea conectivității etc.).
Emulatorul este o mașină virtuală alimentată de Hyper-V care poate interacționa cu hardware-ul computerului. Dacă aveți un monitor tactil, puteți simula ecranul tactil al telefonului; dacă aveți un microfon, puteți simula microfonul telefonului etc. În plus, emulatorul vine cu un set de instrumente suplimentare care sunt utile pentru testarea unor scenarii care ar necesita un dispozitiv fizic, cum ar fi utilizarea senzorului de accelerometru sau a senzorului GPS.
Veți putea lansa emulatorul direct din Visual Studio. Există diferite versiuni ale emulatorului pentru a se potrivi cu diferite rezoluții și dimensiuni de memorie disponibile pe piață.
Aplicațiile Windows Phone sunt publicate pe Windows Phone Store, care este modul principal în care dezvoltatorii pot distribui aplicațiile lor. Cu toate acestea, există două excepții: companii de întreprinderi și dezvoltatori în scopuri de testare.
Pentru a începe publicarea aplicațiilor, veți avea nevoie de un cont de dezvoltator, care poate fi achiziționat de pe portalul oficial. Taxa este de 19 USD pe an și vă permite să publicați un număr nelimitat de aplicații cu plată și un număr maxim de 100 de aplicații gratuite. Recent, Microsoft a îmbinat experiența dezvoltatorilor pentru cele două platforme principale. Aceasta înseamnă că, împreună cu contul pentru dezvoltatori, veți putea, de asemenea, să publicați aplicații Windows Store pentru Windows 8 în Magazinul Windows.
Contul dezvoltatorului este, de asemenea, conectat la testare. De fapt, în mod prestabilit, telefoanele sunt blocate și singura modalitate de a instala aplicații de la terțe părți este prin Windows Phone Store. Toți dezvoltatorii pot debloca gratuit telefoanele, chiar dacă nu au un cont plătit; diferența este că, cu un cont gratuit, un singur telefon poate fi deblocat și numai două aplicații pot fi încărcate pe telefon. Cu un cont plătit, dezvoltatorii pot debloca până la trei telefoane și pot încărca până la 10 aplicații pe fiecare.
Implementarea aplicației poate fi efectuată direct din Visual Studio sau utilizând o unealtă instalată cu SDK numit Implementarea aplicațiilor.
Pentru a debloca telefonul, veți avea nevoie de un alt instrument care vine cu SDK numit Windows Phone Developer Registration. Va trebui să conectați telefonul la computer și să vă conectați utilizând același cont Microsoft pe care l-ați folosit pentru a înregistra contul de dezvoltator.
Cererea care va fi publicată pe Windows Phone Store trebuie să fie certificată. Procesul de certificare (în care se execută atât teste automate, cât și teste manuale) vă asigură că aplicația dvs. este acceptabilă din punct de vedere tehnic (aplicația nu se prăbușește, experiența utilizatorului nu este confuză etc.) și conținutul (fără pornografie, violență excesivă).
Vom detalia mai multe detalii despre procesul de publicare în ultimul articol din această serie.
Microsoft a introdus un nou program pentru dezvoltatori care să ofere acces rapid la noile actualizări Windows Phone. În acest fel, dezvoltatorii își pot testa aplicațiile împotriva celor mai recente versiuni ale sistemului de operare înainte ca acestea să fie distribuite utilizatorilor.
Pentru a vă abona la program, trebuie:
Odată ce ați îndeplinit aceste cerințe, puteți descărca aplicația Previzualizare pentru dezvoltatori din Magazin.
După instalare, va trebui să o executați și să activați programul de previzualizare acceptând termenii și condițiile. După ce ați finalizat procesul, actualizările de previzualizare vor fi livrate ca actualizări obișnuite: va trebui să mergeți la Actualizări secțiunea din Setări pagina și verificați pentru actualizări noi. La momentul redactării, Microsoft livrează GDR3 cu acest program de previzualizare.
Rețineți că, în funcție de producător, instalarea unei versiuni de previzualizare poate sparge garanția telefonului. Este o procedură sigură, dar dacă ceva nu merge bine, este posibil ca producătorul dvs. să nu vă poată susține.
Punctul de plecare al fiecărei aplicații Windows Phone este Visual Studio 2012. Să vedem cum se creează un proiect și cum este structurat.
Primul pas este să deschideți Visual Studio 2012 și faceți clic pe Proiect nou. În șabloanele instalate disponibile, veți găsi Windows Phone care conține toate șabloanele legate de dezvoltarea Windows Phone.
Vom folosi cel mai simplu, Aplicație Windows Phone, care conține doar o pagină de pornire. Dați-i un nume și dați clic pe O.K. Veți fi întrebat ce platformă veți susține. Deoarece acoperăm dezvoltarea Windows Phone 8, alegeți Windows Phone 8.0. Designerul va încărca automat pagina de pornire și, în Soluție Explorer fereastră, veți vedea structura proiectului. Să analizăm în detaliu:
App.xaml
fișierul este punctul de plecare al fiecărei aplicații Windows Phone: se ocupă de inițializarea aplicației și a cadrului care va conține paginile. În plus, din moment ce o instanță a App
clasa (care este definită în App.xaml.cs
fișierul) este întotdeauna menținut în viață în timpul executării aplicației, este, de asemenea, utilizat pentru a defini toate setările globale. De exemplu, puteți intercepta evenimentul ciclului de viață pe care îl vom acoperi mai târziu în această serie sau puteți defini stilurile și resursele XAML globale care vor fi utilizate în întreaga aplicație.
Aceasta este pagina principală a aplicației lansată după inițializarea aplicației. Este implicit inclus într-un proiect, dar puteți adăuga cât mai multe pagini în proiect. Fiecare pagină are aceeași structură: este compusă dintr-un fișier cu extensia .XAML
, care definește interfața de utilizator și un fișier cu extensie .cs
, care este codul din spate care definește logica pentru a interacționa cu interfața cu utilizatorul. Fiecare pagină moștenește dintr-o clasă numită PhoneApplicationPage
care oferă suport integrat pentru proprietățile și evenimentele care sunt conectate la ciclul de viață al paginii, cum ar fi evenimentele de navigare, orientarea, gestionarea tavelor de sistem și multe altele.
bunuri folder conține activele grafice ale aplicației. Proiectul standard include câteva pictograme și imagini implicite pentru diferitele dimensiuni de șabloane și șabloane.
Resurse folder conține toate fișierele necesare pentru a gestiona localizarea. În mod implicit, veți găsi un singur fișier numit AppResources.resx
, care conține limba de bază (de obicei limba engleză, dar puteți selecta o altă limbă). Fiecare altă limbă va fi acceptată prin adăugarea unui nou fișier AppResources. LocalizedStrings.cs
fișierul este adăugat în mod implicit în rădăcina proiectului și este clasa pe care o vom folosi pentru a gestiona localizarea. Vom acoperi acest lucru mai profund mai târziu în această serie.
În interiorul Proprietăți veți găsi un fișier numit WMAppManifest.xml
. Acesta este un dosar foarte important. Se numește manifest deoarece este folosit pentru a declara toate capabilitățile și caracteristicile aplicației. Rolul său este crucial în timpul procesului de certificare; datorită acestui fișier, procesul automat este capabil să extragă toate informațiile necesare despre aplicație, cum ar fi titlul, rezoluțiile acceptate, caracteristicile folosite, etc.
Visual Studio 2012 oferă un editor vizual pentru fișierul manifest; pur și simplu faceți dublu clic pe fișier pentru al deschide. Este important să rețineți că nu toate scenariile de utilizare sunt suportate de editorul vizual. Uneori va trebui să editați manual XML pentru a extinde aplicația noastră.
Editorul este împărțit în patru secțiuni diferite:
Dacă ați dezvoltat deja aplicații pentru Windows Phone 7, ar trebui să fiți familiarizați cu ecranul de pornire. Este o imagine statică care este afișată imediat când aplicația este deschisă și dispare când aplicația este încărcată complet și este gata de utilizare.
Ecranul de pornire a făcut parte din șablonul Visual Studio standard pentru proiectele Windows Phone 7, dar a fost eliminat în proiectele Windows Phone 8. Datorită îmbunătățirilor de performanță introduse în Windows Runtime, aplicațiile încep acum mult mai repede, așa că de obicei nu este nevoie de un ecran de pornire.
Dacă aveți nevoie de un ecran de pornire, va trebui să îl adăugați manual la proiect, urmând o convenție de numire specifică: trebuie să fie în format JPG, numele fișierului trebuie să fie SplashScreenImage.jpg
, iar rezoluția necesară este 768 × 1280. În acest fel, imaginea va fi adaptată automat la rezoluția dispozitivului. Dacă doriți control complet asupra rezoluției dispozitivului, puteți adăuga trei imagini diferite, câte una pentru fiecare rezoluție acceptată. În acest caz, convenția de numire care trebuie urmată este:
SplashScreenImage.screen-WVGA.jpg
pentru dispozitivele de 480 × 800.SplashScreenImage.screen-WXGA.jpg
pentru dispozitivele de 768 x 1280 pixeli.SplashScreenImage.screen-720p.jpg
pentru dispozitivele de 720 × 1280.Rezoluția de 1080p, din punct de vedere al aspectului, se comportă ca și 720p: dacă aplicația dvs. este lansată pe un dispozitiv de 1080p, ecranul de pornire de 720p va fi utilizat dacă există.
Când sunteți gata să vă testați aplicația, o puteți implementa pe un dispozitiv sau în emulator direct din Visual Studio. În zona barei de instrumente veți găsi ceea ce arată ca un buton de redare, împreună cu o descriere a unei destinații de implementare. Puteți alege între cinci obiective diferite: un dispozitiv real, două versiuni ale emulatorului WVGA (unul cu 512 MB de RAM și unul cu 1 GB de RAM), un emulator WXGA și un emulator de 720p. Din când în când, lista poate fi mai lungă, deoarece Microsoft eliberează periodic actualizările SDK pentru a adăuga emulatori noi care se potrivesc noii versiuni a sistemului de operare. De exemplu, Microsoft a lansat deja o actualizare SDK care adaugă imaginile emulatorului aliniate la versiunea GDR2.
Când aplicația rulează în modul de depanare, două funcții sunt activate automat pentru a vă ajuta să lucrați:
În acest prim articol am început să ne confruntăm cu câteva concepte importante pe care fiecare dezvoltator Windows Phone trebuie să le cunoască:
Acest tutorial reprezintă un capitol din Windows Phone 8 Succinctly, un eBook gratuit de la echipa de la Syncfusion.