Building iOS and Android Apps with Mobile Services

  • Published on
    21-Jun-2015

  • View
    1.273

  • Download
    7

Embed Size (px)

DESCRIPTION

Presentation from TechDays Netherlands 2014 on building iOS and Android apps with Azure Mobile Services.

Transcript

<ul><li> 1. Laat ons weten wat u vindt van deze sessie! Vul de evaluatie in via www.techdaysapp.nl en maak kans op een van de 20 prijzen*. Prijswinnaars worden bekend gemaakt via Twitter (#TechDaysNL). Gebruik hiervoor de code op uw badge. Let us know how you feel about this session! Give your feedback via www.techdaysapp.nl and possibly win one of the 20 prizes*. Winners will be announced via Twitter (#TechDaysNL). Use your personal code on your badge. * Over de uitslag kan niet worden gecorrespondeerd, prijzen zijn voorbeelden All results are final, prizes are examples </li></ul> <p> 2. Building iOS and Android Apps with Mobile Services Sasha Goldshtein CTO, Sela Group Microsoft C# MVP, Azure MRS, Azure Insider blog.sashag.net @goldshtn 3. Who are we? App developers What do we hate? Backends 4. Azure Mobile Services is a backend for your mobile apps that has a free tier and cloud scale and support for all mobile platforms 5. Platforms and Features Platforms (client libraries) iOS Android Windows Phone Windows 8 HTML/JavaScript PhoneGap Xamarin Features Data and queries Push notifications Authentication Server-side scripts Custom API Offline sync Mass push Git integration 6. System Diagram Microsoft Azure SQL Database Node + Express backend Apple Push Notification Service Facebook Auth Provider Server scripts Google Cloud Messaging Twitter Auth Provider Custo m API 7. Data Query, iOS MSTable *table = [client tableForName:@apartment]; NSPredicate *predicate = [NSPredicate predicateWithFormat:@rented == NO]; [table readWithPredicate:predicate completion:^(NSArray *items, NSInteger count, NSError* error) { for (NSDictionary *apartment in items) { NSLog(@%@ %d, apartment[@address], apartment[@bedrooms]; } }]; 8. Data Query, Android MobileServiceTable table = client.getTable(Apartment.class); table.where().field(rented).eq(false) .execute(new TableQueryCallback() { public void onCompleted(List items, int count, Exception e, ServiceFilterResponse response) { if (e != null) for (Apartment apt : items) ... } }); 9. Server Script function delete(item, user, request) { if (item.userId != user.userId) { request.respond( 403, You may only delete your own items); } else { request.execute(); } } 10. Authentication [client loginWithProvider:@facebook controller:self animated:YES completion:^(MSUser *user, ...) { ... } ]; client.login( MobileServiceAuthenticationProvider.Facebook, new UserAuthenticationCallback() { public void onCompleted(MobileServiceUser user, ...) { ... } } ); 11. Demo Building the Rent a Home iOS and Android Apps 12. Questions? Sasha Goldshtein blog.sashag.net @goldshtn 13. Laat ons weten wat u vindt van deze sessie! Vul de evaluatie in via www.techdaysapp.nl en maak kans op een van de 20 prijzen*. Prijswinnaars worden bekend gemaakt via Twitter (#TechDaysNL). Gebruik hiervoor de code op uw badge. Let us know how you feel about this session! Give your feedback via www.techdaysapp.nl and possibly win one of the 20 prizes*. Winners will be announced via Twitter (#TechDaysNL). Use your personal code on your badge. * Over de uitslag kan niet worden gecorrespondeerd, prijzen zijn voorbeelden All results are final, prizes are examples </p>