Rails as a Backend for an iOS Application Ian MacKinnon Vancouver Ruby Meetup Lightning Talks Mar. 28, 2013Thursday, 28 March, 13
We’ll be Talking About • Authentication • REST access • NotiﬁcationsThursday, 28 March, 13
Authentication • https://github.com/applicake/doorkeeper • has slightly outdated Railscast • now supports Mongoid • OAuth development environment can be a pain b/c of port number w/ simulator (RestKit ignores it) • Most iOs libraries will keep a regular sessionThursday, 28 March, 13
RESTKit • Your go-to for remote object loading and persisting (can even integrate with coredata!) • Handles JSON/XML to object mapping • Gotchas: • Rails expects nested attributes for params • Need root JSON element for mapping • JSON payload size mattersThursday, 28 March, 13
Conﬁgure RestKit to POST with a root pathThursday, 28 March, 13
Ease up on JSON Size • Normal for application to be run on 3G • Override a model’s as_json to determine the model attributes that will be sent across wireThursday, 28 March, 13
APNS (push notiﬁcations) • Used to suck but there’s a pretty awesome gem now • Grocer (https://github.com/grocer/grocer) • “There are other gems out there to do this, but grocer plans to be the cleanest, most extensible, and friendliest.” • Diﬀerent Gateways for Dev and Production • Token identiﬁes a device, not a userThursday, 28 March, 13
MISC • SSL Certiﬁcates are worth it • Parse is an alternative way of getting up and running quick • But you might need a web presence too • Kind of hard to migrate when you have a bunch of apps pointing to api.parse.comThursday, 28 March, 13
Gostou de algum slide específico?
Recortar slides é uma maneira fácil de colecionar informações para acessar mais tarde.