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 full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

  5. Extension
    dismisses
    immediately
    Photo
    uploads in
    background

    View full-size slide

  6. Extension shows
    progress bar
    Dismisses
    once
    upload
    completes

    View full-size slide

  7. We couldn’t get file coordination
    to work

    View full-size slide

  8. Outgoing request
    store
    File
    Extension App
    Outgoing request
    store

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide