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

Building Tumblr for iOS

Bryan Irace
November 11, 2014

Building Tumblr for iOS

Kind of the director's commentary behind my blog post on iOS 8 share extension issues (http://bryan.io/post/97658826431/what-we-learned-building-the-tumblr-ios-share-extension).

Given at iOSoHo in NYC on Monday, 11/10/2014 (http://www.meetup.com/iOSoho/events/207557752/).

Bryan Irace

November 11, 2014
Tweet

More Decks by Bryan Irace

Other Decks in Technology

Transcript

  1. Bryan Irace
    November 10, 2014
    iOSoHo

    View Slide

  2. View Slide

  3. Goal
    A Tumblr share extension in the App
    Store on the day that iOS 8 is
    released

    View Slide

  4. View Slide

  5. View Slide

  6. View Slide

  7. Share extensions can’t set the status
    bar color

    View Slide

  8. View Slide

  9. We couldn’t get background file
    uploads to work

    View Slide

  10. Extension
    dismisses
    immediately
    Photo
    uploads in
    background

    View Slide

  11. Extension shows
    progress bar
    Dismisses
    once
    upload
    completes

    View Slide

  12. We couldn’t get file coordination
    to work

    View Slide

  13. View Slide

  14. Outgoing request
    store
    File
    Extension App
    Outgoing request
    store

    View Slide

  15. Outgoing
    request writer
    File
    Outgoing
    request
    reader
    Extension App
    File
    File
    File
    File
    Directory Outgoing
    request store

    View Slide

  16. You can’t exclude your own share
    extension from your application’s
    activity controllers

    View Slide

  17. View Slide

  18. Share extensions only show up if they
    explicitly support all activity items

    View Slide

  19. Application must be opened before
    extension is, to migrate files into the
    shared container

    View Slide

  20. Image
    Supports
    images
    Activity
    controller
    URL
    String
    Activity items Share extensions
    Supports URLs
    Supports
    strings

    View Slide

  21. Image
    Supports
    images, URLs,
    and strings
    Activity
    controller
    URL
    String
    Activity items Share extensions

    View Slide

  22. Supports URLs
    and who cares
    what else
    Activity
    controller
    URL
    Activity items Share extensions

    View Slide

  23. Breaking your code into libraries will
    help you build extensions, new apps

    View Slide

  24. Core Tumblr
    Compose UI
    UIKit dependency
    No references to UIApplication, etc.
    Model objects
    Categories
    Persistence
    Tumblr SDK
    Open source

    View Slide

  25. View Slide

  26. View Slide

  27. View Slide

  28. Thank you!
    @irace
    tumblr.com/jobs

    View Slide