Aplicație Win 8 în 10 zile – #9 Toast Notifications
Pe parcursul acestor 8 zile (9 cu cea de azi) am învățat multe lucruri noi, dar foarte mare atenție. Pentru simplul fapt că știm să trimitem o notificare nu înseamnă că trebuie să o și folosim! Pe telefonul meu unul din principalele motive pentru care dezinstalez o aplicație este nevoia constantă pe care o simte dezvoltatorul/aplicația să îmi aducă aminte că nu am jucat de X timp sau că există o ofertă fantastică și unică pe care nu vreau să o ratez! Genul ăsta de update-uri sunt decente dacă aduc ceva cu adevărat constructiv pentru utilizator și nu sunt folosite în exces! Aveți grijă: nu vreți doar să aveți multe descărcări de aplicații, vreți ca utilizatorii să și petreacă timp în aplicațiile voastre!
Acum câteva zile am învățat despre notificările pe care le putem programa în interiorul aplicației, azi o să vedem cu legăm aplicația noastră de Mobile Services și cum putem să trimitem de acolo diferite tipuri de notificări!
Ca să putem trimite notificări din Azure trebuie, prima dată, să asociem aplicația noastră cu Windows Store. Click dreapta pe numele proiectului, Store, Associate App with the Store…
Aici va trebui să specifici un nume pentru aplicația ta (dacă nu ai făcut deja asta). Urmează să intru în dashboard-ul din windows store, să-mi selectez aplicația mea și să dau click pe Services.
În interiorul ferestrei dau click pe Live Service site și în noua fereastră în partea din stânga selectez Authenticating your service și notez SID și Client Secret. Le vom folosi imediat.
Azure Time
Intru în portalul Azure, din partea de jos dau click pe New -> App Services -> Service Bus -> Notification Hub -> Quick Create.
Așteptăm câteva minute pentru a se crea serviciul și după dăm click pe numele lui (by default se termină cu -ns).
Mergem la notifications hub și aleg hub-ul pe care l-am creat mai devreme: warofthequiz în cazul meu.
La secțiunea configure o să introduc Packade SID și Client Secret pe care l-am luat mai devreme din Dashboard-ul de developer. Salvez totul și mă duc la dashboard (prima opțiune de sus)
La fereastra dashboard o să am în partea de jos o cheie pe care scrie Connection Information, dau click pe ea și notez informațiile de acolo!
Visual Studio time
Îmi deschid proiectul meu și îi adaug NuGet-ul WindowsAzure.Messaging.Managed. Pentru că în ultimul timp am întâmpinat probleme instalând automat NuGet-urile am început să le instalez din consolă: Tools-> Library Package Manager -> Package Manager Console și scrii: Install-Package WindowsAzure.Messaging.Managed
Deschid App.xaml.cs și voi introduce în interiorul clasei:
Dacă apar probleme/erori le dau click dreapta și resolve (ar trebui să se adauge 3 using-uri). Nu uit ca în loc de warofthequiz și codul meu super secret să scriu numele hub-ului meu (cel fără -ns) și adaug codul din DefaultListenSharedAccessSignature. Ultimul lucru pe care vreau să îl mai facem este să apelăm această metodă când aplicația s-a lansat. Adăugăm la InitiNotificationsAsync(); la metoda OnLaunched, rulăm aplicația, o închidem și ne pregătim de ultimul pas.
Send it!
Putem să trimitem notificări în foarte multe feluri mai departe. Putem să ne crăm noi o altă aplicație Windows 8 care să ruleze doar pe dispozitivul nostru și de acolo să trimitem notificări. Putem să folosim sistemul de programare a notificărilor oferit de Azure, putem să folosim API-ul REST etc. Noi vom alege varianta cea mai de bază: creăm o aplicația de tip consolă! Urmând pașii pe care vi i-am arătat mai dereme adaug NuGet-ul: WindowsAzure.ServiceBus.
Cum am făcut și mai devreme înlocuiesc DefaultFullSharedAccessSignature cu string-ul pe care l-am luat mai devreme din Azure de la Connection Information și lansez aplicația de tip consolă.
Voila!!
Am făcut-o și pe-asta 🙂
Disclaimer
1. Tutorialul îl găsești și aici în forma lui inițială. L-am luat și l-am adaptat cu scopul de a aduce îmbunătățiri aplicației noastre.
2. Dacă vrei să înveți și mai multe despre Hub Notifications sugerez și acest link. Dacă vrei să vezi cum să trimiți notificări doar unor anumite categorii de persoane citești aici
3. Poți trimite mai multe tipuri de notificări urmărind template-ul pe care-l găsești aici.
Mâine terminăm seria de 10 zile, facem retușurile de final, schimbăm placeholderele și lansăm aplicația în store!
By: Adrian Coman