Launch Center URL Docs

As of Launch Center 1.2, the app has a built-in list of supported apps and actions. That list can be updated remotely from a plist file on our server. We'd love some help in filling that list with interesting apps and handy actions.

We'd also appreciate help in spreading the word about URL schemes. It's surprising how few apps support them, and those that do don't always go very deep with supported actions. If you have an idea for an app and/or action that would make sense in Launch Center, please contact the developer of that app directly and point them to this page.

Here's the basic structure of the plist and how to populate it:

There are just two parameters required to support the launching of an app: App Name and Base URL

For example, to launch Twitterrific, you'd only need to specify name=Twitterrific url=twitterrific://

For any app supported by Launch Center, we prefer to have the app icon as well. We host these on S3 to make it quick and easy to load the icons of supported apps into Launch Center. Each app has 2 icons: baseurl.png and baseurl@2x.png, where the first is 29x29 pixels and the second is 58x58 pixels. For example twitterrific.png and twitterrific@2x.png. Update: To allow flexibility in future UI updates, we now collect and/or generate all sizes currently supported by iOS. Just replace the word “Icon” with the base url of the app. For example, here are the 9 icon files we now use for Twitterrific:

  1. twitterrific512.png
  2. twitterrific.png [57px]
  3. twitterrific@2x.png [114px]
  4. twitterrific-72.png [72px]
  5. twitterrific-72@2x.png [144px]
  6. twitterrific-Small.png [29px]
  7. twitterrific-Small@2x.png [58px]
  8. twitterrific-Small-50.png [50px]
  9. twitterrific-Small-50@2x.png [100px]

Please note the capitalization since S3 is case sensitive. Don't capitalize any letters in the baseurl, but do capitalize Small.

This allows us to support both retina and non-retina displays without having to resize on the fly [speed is of the essence for an app launcher]. Many apps have icons of this size in the app bundle, but those that don't can be resized in photoshop. Launch Center has it's own mask for these icons, so it's preferable that icons be optimized for the web and not have transparency (to make them as small as possible, and therefore quick to load from S3).

Launching an app is great, but the true power of Launch Center is in the ability to trigger specific actions deep within an app. For example, while using Tweetbot, you may leave the app buried deep within a search. To launch the app and tweet might take quite a few taps as you have to back out of the search, tap the compose button, select an account, paste text, etc. Launch Center can make that a reliable 2 taps. 1 to open Launch Center and 1 to trigger the action. Here's what the URL to trigger that action looks like: tweetbot:///screenname/post?text=[clipboard]

URL schemes have been available for quite some time, but users don't often take advantage because of how complex and cumbersome they are. In Launch Center 1.2 we make it a bit easier, and hope to make it even more simple in future updates

In Launch Center, each app can have multiple actions and each action can have 2 parameters (if the need arises we may support additional parameters in a future release). Creating an action is similar to adding basic support. We just need a Name and a URL. For example: name=Mentions and url=twitterrific://mentions

Parameters get a bit more tricky, though they are optional. Parameters have keys that are used in the action URL and also have tips to help users grok how the parameter is used in the action. So here's how you'd set up an action with parameters:

name=Search
url=twitterrific:///search?q=[searchTerm]
parameter->name=Search Term
parameter->key=searchTerm
parameter->tip=You can use quotes to search a specific phrase. Launch Center ignores empty or non-existent values, so delete the parameters child or any other unused items.

In version 1.2 Launch Center supports the use of [clipboard] for any parameter that you want to hard code to use the clipboard. In a future release we plan to allow each parameter to be user configurable to use the clipboard or default text entered by the user.

This all may be a bit confusing, but hopefully the attached sample plist will make things a bit more clear.

Here is a template for adding apps/actions: template.plist

And here's a sample plist that includes some common tasks supported by Twitterrific: twitterrific.plist

To prevent a lot of duplicate work, I'll keep the full plist updated here: urlschemes.plist

Once you've built a complete plist and exported the associated icon files, please email them to urls@appcubby.com

Here's a great reference to learn more about URL schemes: Furbo.org • [REDACTED]

If you're a developer adding or modifying a URL scheme in your app, consider supporting the x-callback-url specification.