Upload
friedger-mueffke
View
355
Download
5
Embed Size (px)
Citation preview
Server-Less Appsusing servers without caring
Friedger Müffke#fmdroid
droidcon London 2012
Motivation
Web services
● General audienceMade for servers and web pages
● Specific purposeSpeech recognitionPaymentDirections
Scope
● Mobile AudienceAndroid tools (and others)
● Technical purposeUser managementData storagePush notificationsLocation
On-Device Apps
● Communication with 3rd party app● Trust relation between user and 3rd party
app● SDK for communication via intents● Library projects
Facebook (3.0) / Google+Box/Google Drive
Google Spreadsheet
1. Add jars (jackson, protobuf-java, google-client-api-*, google-http-client-*)
2. Add oauth or use Google Service (new!)3. Make HttpRequest4. Parse
Google Spreadsheet (2)
final HttpResponse resp = mHttpClient.execute(request); final int status = resp.getStatusLine().getStatusCode(); final InputStream input = resp.getEntity().getContent(); try { final XmlPullParser parser = ParserUtils.newPullParser(input); handler.parseAndApply(parser, mResolver); } catch (XmlPullParserException e) { throw new HandlerException("Bad Req: " +req.getRequestLine(), e); } finally { if (input != null) input.close(); } SpreadsheetEntry entry = SpreadsheetEntry.fromParser(parser); row = service.insert(listFeedUrl, row);
netmera
● Content○ Media○ GeoLocation
● User Management○ ACL via user property
● Push Notification on Server (Java SDK)
Netmera (2)
c = NetmeraContent("House")c.add("price", "10.000GBP")c.create() / c.createInBackground()
NetmeraService.search()NetmeraUser, NetmeraMedia, NetmeraGeoLocation
www.netmera.com - use key: droidcon2012Free pro account for ever
kii
● User Management○ ACL for application, group, user level
● Data storage as JSON or Files● Syncing folders
http://documentation.kii.com/en/android-guides
StackMob
● User Management○ support for Twitter and Facebook
● Data model super class with CRUD methods● Queries by field, also by location
On Server:● Push Notifications on Server● Custom Code SDK (Java/Scala)
More and Name Dropping
● many Analytics and Ads provider● User feedback WebView with disqus● ScoreNinja● QuickBlox● UserGrid● Pusher● Cosm● StorageRoom● Parse● Makala (private beta)● Azur Mobile, Amazon S3