Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Winch - Build Faster Mobile Apps

jinqian
December 12, 2013

Winch - Build Faster Mobile Apps

Winch is a sync engine for iOS and Android apps. It lets you build highly responsive mobile apps that even work off-line.

These slides explain how to leverage the Winch sync engine to create Android apps that react faster and also work offline, through an example from a real world application - Overlay.

Presentation made for Paris Android User Group.

See:
* https://winch.io
* http://overlay.ms/
* http://www.meetup.com/Android-Paris/events/154180492/

jinqian

December 12, 2013
Tweet

More Decks by jinqian

Other Decks in Technology

Transcript

  1. An application that allows you to buy products you see

    in paper magazines and catalogs. It is powered by Winch.
  2. 23%

  3. The naïve way Key Value Catalog ID { "merchant": "Ikea",

    "title": "Catalogue 2014", "currency": "EUR", "country": 2, "cover_url": "http://www.ikea.com/.." }
  4. The common way Key Value Catalog ID { "merchant": "Ikea",

    "title": "Catalogue 2014", "currency": "EUR", "country": 2, "cover_base64": "TWFuIGlzIGRpc3Rp..." }
  5. catalog:meta catalog:meta Key Value Catalog ID { "merchant": "Ikea", "title":

    "Catalogue 2014", "currency": "EUR", "country": 2, } catalog:cover catalog:cover Key Value Catalog ID The smart way
  6. String json = winchNamespace.getString(key); Gson gson = new Gson(); Catalog

    c = gson.fromJson(json, Catalog.class); Overlay uses Gson™, by Google "Gson is a Java library that can be used to convert a JSON string to an equivalent Java object. "
  7. public class Catalog implements Serializable { protected String id; protected

    String merchant; protected String title; protected String currency; //... } Catalog JSON String { "merchant": "Ikea", "title": "Catalogue 2014", "currency": "EUR", "country": 2, } Catalog Java Object
  8. ➡ A master-slave replication engine designed for mobile apps. ➡

    Compatible with devices running Android 2.3+ Questions?