Mobilné služby na platforme Azure

137

microsoft-azure-logoMobilné služby sa využívajú pre špecifický okruh často sa opakujúcich úloh v mobilných aplikáciách, typicky pre ukladanie údajov, autentifikáciu, posielanie notifikácií a podobne. Použitím mobilnej služby si uľahčíte a zrýchlite vývoj, nakoľko funkcionalitu, ktorú presuniete na mobilnú službu by ste museli prácne vytvárať a prevádzkovať ju vo vlastnom, alebo prenajatom serverovom prostredí.

Používanie mobilných služieb vám umožní rýchlo a jednoducho pridať plnohodnotný backend k mobilným aplikáciám pre zariadenia s operačným systémom iOS, Android, Windows, Windows Phone, HTML alebo pre cross-platformové Xamarin, Sencha, alebo PhoneGap aplikácie.

Mobilnú službu vytvoríte rýchlo, doslova na niekoľko kliknutí. Mobilné služby môžu využívať aplikácie pre najpoužívanejšie tabletové a mobilné platformy Windows 8 a 8.1, Windows Phone, iOS a Android. Prevádzka mobilnej službu je lacná, na báze mesačných poplatkov.  Nároky na správu sú prakticky nulové, nakoľko je prevádzkovaná v cloudovom prostredí platformy Microsoft Azure, takže neriešite prevádzkové aspekty ako sú zálohovanie, monitorovanie, obnova a podobne.

Na strane servera (backend) je možné vytvárať mobilne služby buď v programovacom jazyku JavaScript (pre node.js backend), alebo v .NETe (pre Web API backend).

Cenové kalkulácie nájdete na Azure webe. Môžete prevádzkovať až 10 služieb zdarma a zdarma ukladať údaje do objemu 20 MB.

Azure - kalkulácia ceny

Interaktívny kalkulátor mesačných nákladov za prevádzkovanie mobilných služieb

Azure Cenník

Cenník (august 2014)

Dátové služby

Umožňujú trvalé uloženie aplikačných dát v relačnej cloudovej databáze SQL Azure, prípadne údaje pomocou Custom API môžete uložiť inde vo vlastných zdrojoch údajov. Dátové služby je možné použiť na zdieľanie údajov medzi zariadeniami a to aj naprieč platformami. Typickým príkladom je zdieľanie údajov medzi Windows 8.1, Windows Phone a trebárs iPhone aplikáciami toho istého používateľa.

Ako úložisko slúži databáza SQL Azure. Databáza môže byť zdieľaná až 10-timi mobilnými službami. Konfiguruje sa pri vytváraní mobilnej služby pomocou portálu. Neskôr je možné pripojovací reťazec do databázy zmeniť. Tabuľky sa v databáze vytvárajú taktiež cez portál manuálne. Zadáte názov a prístupové práva.

Ak si sťahujete zo stránky mobilnej služby štartovaciu aplikáciu, tabuľku pre túto aplikáciu vytvoríte tlačidlom zo  stránky služby.

Názov mobilnej služby je zároveň databázová schéma. . Ak je názov služby mojahra, tak na tabuľku skore sa dotazujeme SELECT * FROM mojahra.skore.

V tabuľke je automaticky vytvorený stĺpec (atribút) Id typu bigint (64 bitový integer), ktorý slúži ako primárny kľúč. Automaticky sa generuje priamo na serveri.

Názvy stĺpcov tabuliek sú de facto názvami JSON elementov. Stĺpce (atribúty) databázovej tabuľky môžete vytvárať manuálne pomocou nástrojov na správu SQL Azure, prípadne dynamicky. Ak túto možnosť v sekcii dynamic schema povolíte, vytvára si služba atribúty v prípade potreby sama

Data13

Konfigurácia SQL Azure databázy využívanej mobilnou službou

Vzťah medzi kódom a JSON formátom je definovaný takto:

  • Názov triedy = názov entity
  • Názov vlastnosti = názov JSON elementu

Túto konvenciu je možné  zmeniť pomocou atribútov v kóde

Správa databázy je jednoduchá prostredníctvom portálu. Môžete zobraziť buď návrhovú štruktúru tabuľky, alebo uložené údaje. Používateľské rozhranie portálu umožňuje aj vymazanie konkrétneho riadku, prípadne celej tabuľky, vymazanie atribútu, či vytváranie a vymazávania indexov pre jednotlivé atribúty.

Data14

Zobrazenie záznamov uložených v databázovej tabuľke

Data15

Zobrazenie návrhovej štruktúry tabuľky

Data16

Vytvorenie tabuľky

SQL Azure databázu môžete spravovať aj pomocou í SQL Management Studia, kde môžete definovať zložitejšie indexy, relácie medzi tabuľkami, pohľady, uložené procedúry, triggery a podobne.

Pre prístup k údajom z Windows Store aplikácie je potrebné vytvoriť  objekt MobileServiceClient

MobileServiceClient client =
 new MobileServiceClient(
     "https://vase-url/",
     "xXAeT...kluc...Io91");

Následne je potrebné definovať dátovú triedu (v C#)

public class Uloha
 {
     public int Id { get; set; }
     public string Nazov { get; set; }
     public string Popis { get; set; }
     public int Priorita { get; set; }
}

Kód pre čítanie údajov v C#

var ulohy = client.GetTable<Uloha>();
 
var urgentneUlohy = await
     ulohy.Where(k => k.Priorita > 5)
     .ToListAsync();

Kód pre vloženie záznamu v C#

var u = new Uloha() {
     Nazov = "Ostrihať psa",
     Popis = "potrebujem pomocníka"};
 
var ulohy = client.GetTable<Kniha>();
 await ulohy.InsertAsync(u);

Kód pre vloženie záznamu v Objective C (iOS)

NSDictionary *u= @{
     @"nazov" : @"Ostrihať psa",
     @"popis" : @"potrebujem pomocníka"};
 MSTable *ulohy= [client getTable:@"Uloha"];
 [ulohy insert:u];

Kód pre vloženie záznamu v jazyku Java na platforme Android

Uloha u = new Uloha();
u.Nazev = "Ostrihať psa";
u.Autor = "potrebujem pomocníka";
MobileServiceTable<Uloha> ulohy = client.getTable(Uloha.class);
ulohy.Insert(u);

Autentizačné služby

Používatelia mobilných aplikácií využívajúcich autentizačné služby majú možnosť prihlásiť sa pomocou Azure Active Directory a bezpečne pristupovať k podnikovým údajom, či k SharePointu, alebo Office 365. Taktiež je možné bezproblémové pripojenie k on-premisses databázam a webovým službám, ktoré nie sú vystavené na internete a za firemným firewallom.

Komunikácia s mobilnou službou prebieha cez protokol http a https. Prístup k údajom mobilnej služby získa používateľ až po prihlásení. Autentizačné služby umožňujú jednotné prihlásenie používateľov známou identitou, ktorá je od renomovaných  poskytovateľov identít, napríklad Microsoft účet, Facebook účet, Twitter účet, či Google účet…

Postup nastavenia autentizácie je možné rozdeliť do troch krokov:

  1. Registrácia aplikácie u poskytovateľa identity
  2. Získanie ID aplikácie a kľúča pre šifrovanie tokenu
  3. Zadanie údajov v správe Mobile Service

Notifikačné služby

Umožňujú doručenie notifikácií na zariadenie. Typickým príkladom sú dynamické dlaždice Windows 8.1 a Windows Phone aplikácií, prípadne takzvané „toast“ notifikácie známe nielen z Windows, ale aj z Androidu. Názov toast je odvodený od toho, že oznam vizuálne vyskočí ako hrianka z hriankovača. Notifikačné služby okrem aktualizácie dlaždíc umožňujú aj aktualizáciu údajov bežiacej aplikácie.

Využívajú sa tri typy notifikácií

  1. Rýchla správa pre užívateľov  “Toast notification” – pre aktuálne oznamy, napríklad o prijatí mailu, dôležitej udalosti a podobne.
  2. Aktualizácia stavu aplikácie “Tile notification” – napríklas. aktuálna teplota, počet správ v schránke
  3. Správa pre aplikáciu “Raw notification” – správa nie je pre užívateľa, ale pre aplikáciu. Aplikácia musí v danú chvíľu bežať alebo mať registrovaného agenta na pozadí.

Vytvorenie konta na platforme Microsoft Azure

Vstupný bod do platformy je www.windowsazure.com. Môžete si vytvoriť skúšobné konto a počas jedného mesiaca máte k dispozícii na vyskúšanie ľubovoľné služby v objeme 150 EUR.

Konto1

Odkaz Try for Free vás presmeruje na vytvorenie bezplatného vytvorenie skúšobného konta

Vývojári s predplatenou službou MSDN môžu využívať bezplatné konto počas celého trvania predplatného. Objem dostupných prostriedkov závisí od úrovne MSDN, ktoré máte predplatené. Nie je potrebné zadať žiadnu platobnú kartu, pričom aj pri tomto prístupe máte garantovanú nulovú platbu. Ak vyčerpáte pridelené limity, služba bude zvyšok mesiaca obmedzená.

Predplatné MSDN získavajú v programe BizSpark aj vývojárske „startupy“, ktoré si tiež môžu aktivovať Azure benefit bez platobnej karty a môžu ho používať dokonca aj na produkčné účely. Vstupný bod do vášho Azure účtu je https://manage.windowsazure.com/.

Dobrý článok? Chceš dostávať ďalšie?

Už viac ako 4 200 z vás dostáva správy e-mailom. Nemusíš sa báť, nie každé ráno. Len občasne.

I agree to have my personal information transfered to MailChimp ( more information )

Tvoj email neposkytneme 3tím stranám. Posielame naňho len informácie z robime.it. Kedykoľvek sa môžete odhlásiť.