Helios y su integración en iOS
Upcoming SlideShare
Loading in...5
×
 

Helios y su integración en iOS

on

  • 617 views

Presentación sobre el framework Helios, los módulos que lo componen y las librerías con las que puede integrarse en desarrollos iOS.

Presentación sobre el framework Helios, los módulos que lo componen y las librerías con las que puede integrarse en desarrollos iOS.

Statistics

Views

Total Views
617
Views on SlideShare
617
Embed Views
0

Actions

Likes
0
Downloads
3
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Helios y su integración en iOS Helios y su integración en iOS Presentation Transcript

  • Helios y su integración en iOS ¿Es   una persona o una legión?@mattt Created by /Javier Moreno @jmoreno
  • , an extensible   mobile backend framework helios open-source si, si, pero... ¿qué es? Aplicación Ruby construida sobre . Compuesto por varias aplicaciones Ruby hechas con Sinatra. Con una pequeña interfaz de administración web. Rack
  • ¿Para qué sirve? Sincronización de datos Notificaciones PUSH Gestión de In-App Purchases Gestión de Passbook Gestión de Newstand Analíticas y logging Configuración remota
  • Sincronización de datos En el backend : Automatically generate RESTful CRUD servicesRack::Scaffold En iOS : Core Data Persistence with AFNetworking, Done Right... my ass! : A delightful iOS and OS X networking framework. AFIncrementalStore AFNetworking
  • Rack::Scaffold GET /:resources POST /:resources GET /:resources/:id PUT /:resources/:id DELETE /:resources/:id GET /:resources/:id/:associationsi hay relaciones
  • AFIncrementalStore Promete mucho pero AFNetworking es más seguro.
  • Notificaciones PUSH En el backend : A Rack-mountable webservice for managing push notifications : Apple Push Notifications; No Dirigible Required Rack::PushNotification Houston En iOS : Push Notification Registration for iOSOrbiter
  • Rack::PushNotification PUT /push_notification/devices/:token DELETE /push_notification/devices/:token GET /push_notification/devices/? GET /push_notification/devices/:token/?
  • Houston POST /push_notification/message Command-Line Interface
  • Orbiter Integración con Helios -(void)application:(UIApplication*)applicationdidRegisterForRemoteNotificationsWithDeviceToken:(NSData { NSURL*serverURL=[NSURLURLWithString:@"http://demo.helios.javimoreno.me/devices/"]; Orbiter*orbiter=[[Orbiteralloc]initWithBaseURL:serverURLcredential:nil]; [orbiterregisterDeviceToken:deviceTokenwithAlias:nilsuccess:^(idresponseObject){ NSLog(@"RegistrationSuccess:%@",responseObject); }failure:^(NSError*error){ NSLog(@"RegistrationError:%@",error); }]; } También con Parse y Urban Airship
  • Gestión de In-App Purchases En el backend : Ruby Gem for In-App Purchase Receipt Verification Rack::InAppPurchase Venice En iOS : The Essential StoreKit CompanionCargo Bay
  • Rack::InAppPurchase POST /in_app_purchase/receipts/verify GET /in_app_purchase/products/identifiers GET /in_app_purchase/receipts/
  • Venice Command-Line Interface
  • Cargo Bay Lista de productos disponibles: NSURL*url=[NSURLURLWithString:@"http://demo.helios.javimoreno.me/in_app_purchase/products/identifiers/ NSURLRequest*request=[NSURLRequestrequestWithURL:url]; [[CargoBaysharedManager]productsWithRequest:requestsuccess:^(NSArray*products,NSArray*invalidIdentif NSLog(@"Products:%@",products); NSLog(@"InvalidIdentifiers:%@",invalidIdentifiers); _productsArray=[NSMutableArrayarrayWithArray:products]; [self.tableViewreloadData]; }failure:^(NSError*error){ NSLog(@"Error:%@",[errordescription]); }];
  • Cargo Bay Seguimiento de los pagos: -(void)application:(UIApplication*)applicationdidFinishLaunchingWithOptions:(NSDictionary*)options{ [[CargoBaysharedManager]setPaymentQueueUpdatedTransactionsBlock:^(SKPaymentQueue*queue,NSArray*tr NSLog(@"UpdatedTransactions:%@",transactions); }]; [[SKPaymentQueuedefaultQueue]addTransactionObserver:[CargoBaysharedManager]]; //... }
  • Cargo Bay Verificación de la compra: [[CargoBaysharedManager]verifyTransaction:transactionpassword:nilsuccess:^(NSDictionary*receipt){ NSLog(@"Receipt:%@",receipt); }failure:^(NSError*error){ NSLog(@"Error%d(%@)",[errorcode],[errorlocalizedDescription]); }];
  • Gestión de Passbook En el backend : Generate and Preview Passbook Passes Rack::Passbook Dubai En iOS : A delightful iOS and OS X networking framework.AFNetworking
  • Rack::Passbook GET /passbook/passes/:passTypeIdentifier/:serialNumber GET /passbook/devices/:deviceLibraryIdentifier/registration passesUpdatedSince=tag] POST /passbook/devices/:deviceLibraryIdentifier/registrations/:p DELETE /passbook/devices/:deviceLibraryIdentifier/registrations/:p GET /passbook/passes/
  • Dubai Command-Line Interface
  • Gestión de Newsstand En el backend : Automatically generate webservice endpoints for Newsstand Rack::Newsstand En iOS : A delightful iOS and OS X networking framework.AFNetworking
  • Rack::Newsstand GET /newsstand/issues GET /newsstand/issues/:name POST /newsstand/issues
  • Analíticas y logging En el backend : Log metrics from HTTP request parameters according to l2met conventions Rack::HTTPLogger En iOS : Extensible Remote LoggingAntenna
  • Configuración remota En el backend : Serve property list or JSON configuration files Rack::RemoteConfiguration En iOS : Remote Configuration for iOS : Multivariate & A/B Testing for iOS and Mac Ground Control SkyLab
  • Anexos : world-class command line utilities for iOS development : a hybrid approach to real-time cloud applications : The easiest way to get started with PostgreSQL on the Mac : A Polyglot Database Client for Mac OS X : a journal of the overlooked bits in Objective-C and Cocoa : Searchable full-text transcripts of WWDC sessions Nomad Rocket PostgresApp Induction NSHipster ASCIIwwdc
  • THE END BY Javier Moreno / javimoreno.me