App academy - Parse

229
-1

Published on

Presentation I gave for the App Academy about Parse as a backend

Published in: Mobile
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
229
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

App academy - Parse

  1. 1. Parse mobile backend as a service
  2. 2. Timan Rebel Serial Entrepreneur
  3. 3. Waarom een backend?
  4. 4. Communicatie tussen devices
  5. 5. Communicatie tussen gebruikers
  6. 6. Communicatie buiten de app om
  7. 7. Zelf bouwen vs Uitbesteden
  8. 8. Alle vrijheid vs Tijd besparen en andermans expertise gebruiken
  9. 9. Wat biedt Parse? Backend as a service
  10. 10. Parse Core Meest interessante van de drie
  11. 11. Data opslaan in de cloud Tekst Locaties Bestanden (foto’s bijv) Data ophalen dmv queries
  12. 12. App sociaal maken Inloggen met Facebook en Twitter Inloggen/Registreren met emailadres
  13. 13. Lokaal data bewaren Ook toegang tot alle data wanneer er geen internetverbinding is. Dit is bijzonder lastig
  14. 14. Eigen website draaien Niet enkel statisch, maar met toegang tot alle data die verzamelt is met de app
  15. 15. Background jobs Eenvoudig langdurige processen draaien zonder dat de app er op hoeft te wachten Bijv foto’s resizen, emails versturen
  16. 16. Parse Dashboard Eenvoudig toegang tot alle data via het web
  17. 17. Parse Push Push Notificaties waren nog nooit zo simpel
  18. 18. Eenvoudig zelf berichten versturen Via de parse composer
  19. 19. Of vanuit de app of ahv bepaalde acties
  20. 20. Targeting en Scheduling
  21. 21. Parse Analytics Meten is weten
  22. 22. Meet het gebruik van je app Installaties Actieve gebruikers Retention
  23. 23. Meet het gebruik ahv eigen events Met 1 regel zelf toevoegen aan je app Bijv. wanneer iemand iets shared, een foto liked, voor de eerste keer een actie uitvoert, etc
  24. 24. Wat kost Parse? Het is niet gratis, maar….
  25. 25. Gratis tot: 30 requests per seconde 20GB file storage 1 miljoen devices voor push Analytics altijd gratis
  26. 26. Hoe werkt het dan? Teveel om uit te leggen, maar een aantal voorbeelden
  27. 27. PFObject *keynote = [PFObject objectWithClassName:@"Keynote"]; keynote[@"name"] = @“Parse”; keynote[@"presenterName"] = @“Timan Rebel"; keynote[@"boring"] = @NO; [keynote saveInBackground];
  28. 28. PFQuery *query = [PFQuery queryWithClassName:@"Keynote"]; [query getObjectInBackgroundWithId:@"xWMyZ4YEGZ" block:^(PFObject *keynote, NSError *error) { // Do something with the returned PFObject in the keynote variable. if (!error) { // The get request succeeded. Log the score NSLog(@"The presenter was: %@", keynote[@"presenterName"]); } else { // Log details of our failure NSLog(@"Error: %@ %@", error, [error userInfo]); }}];
  29. 29. // First set up a callback. - (void)getCallback:(PFObject *)keynote error:(NSError *)error { if (!error) { // The get request succeeded. Log the score NSLog(@"The presenter was: %@", keynote[@"presenterName"]); } else { // Log details of our failure NSLog(@"Error: %@ %@", error, [error userInfo]); } } // Then, inside another method elsewhere in your code... PFQuery *query = [PFQuery queryWithClassName:@"GameScore"]; [query getObjectInBackgroundWithId:@"xWMyZ4YEGZ" target:self selector:@selector(getCallback:error:)];
  30. 30. keynote[@"boring"] = @YES; [keynote saveInBackground];
  31. 31. [keynote saveEventually];
  32. 32. [keynote deleteInBackground];
  33. 33. [PFFacebookUtils logInWithPermissions:permissions block:^(PFUser *user, NSError *error) { if (!user) { NSLog(@"Uh oh. The user cancelled the Facebook login."); } else if (user.isNew) { NSLog(@"User signed up and logged in through Facebook!"); } else { NSLog(@"User logged in through Facebook!"); } }];
  34. 34. parse.com

×