Technology moves fast! ⚡ Don't get left behind.🚶 Subscribe to our mailing list to keep up with latest and greatest in open source projects! 🏆


Subscribe to our mailing list

evernote-ios-x-callback-url

x-callback-url support for Evernote iOS app

Subscribe to updates I use evernote-ios-x-callback-url


Statistics on evernote-ios-x-callback-url

Number of watchers on Github 38
Number of open issues 2
Average time to close an issue 4 days
Main language HTML
Open pull requests 0+
Closed pull requests 0+
Last commit over 4 years ago
Repo Created over 4 years ago
Repo Last Updated over 1 year ago
Size 3.6 MB
Organization / Authorevernote
Contributors1
Page Updated
Do you use evernote-ios-x-callback-url? Leave a review!
View open issues (2)
View evernote-ios-x-callback-url activity
View on github
Fresh, new opensource launches 🚀🚀🚀
Trendy new open source projects in your inbox! View examples

Subscribe to our mailing list

Evaluating evernote-ios-x-callback-url for your project? Score Explanation
Commits Score (?)
Issues & PR Score (?)

Evernote iOS x-callback-url support

Evernote iOS app started supporting x-callback-url from version 7.5. Some apps are already using this integration, like Launch Center Pro and Drafts 4.
Here's an example in Launch Center Pro
Launch Center Pro Demo
Phillip Gruneich wrote a great article about x-callback-url support in Evernote iOS and wonderful things we can accomplish with this. I recommend you read it here.
This repo serves as the documentation. Feel free to file a bug or a feature request on this Github repo.

Overview

Extensions in iOS 8 and OS X Yosemite makes integrations between apps easier than ever. But according to WWDC 2014, URL schemes is still the recommended way to do inter-app communication. x-callback-url is a popular solution in the iOS community and there're a lot of apps that's adopting it.

Scheme

Following the specs, the x-callback scheme in Evernote iOS is

evernote://x-callback-url/[action]?[action parameters]&[x-callback parameters]

You can integrate with Evernote iOS app with literally one line of Objective-C code, for example:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"evernote://x-callback-url/new-note?type=text&title=EC%204&text=this%20is%20a%20great%20day"]];

Or Swift, if you like

UIApplication.sharedApplication().openURL(NSURL(string: "evernote://x-callback-url/new-note?type=text&title=EC%204&text=this%20is%20a%20great%20day"))

Note: the parameters are URL encoded

Protocol

x-callback-url protocol is defined in http://x-callback-url.com/

Actions

/new-note

Create a new note

Parameters

  • type optional STRING
    Can be one of {text, html, camera, photos, reminder, list, audio, clipboard, lastphoto}. Check out the URL scheme examples to understand the differences between those types.

  • title optional STRING
    Title of the new note

  • text optional STRING
    Text to append to the note
    When note type is html, make sure the text is sanitized html string and no external resources
    When note type is text, camera, photos, list and audio, only plain text is supported
    Other note type this parameter is ignored

  • longtitude optional DOUBLE
    Longtitude value of the new note

  • latitude optional DOUBLE
    Latitude value of the new note

  • reminderdate optional DOUBLE
    The due date of the new reminder, expressed in number of seconds from the first instant of 1 January 1970, GMT. Use to set an absolute due date for the reminder. You can get the value from[NSDate timeIntervalSince1970]

/new-clipped-note

Create a new note from URL in clipboard

Parameters

  • url required STRING
    The URL to clip

x-callback parameters

This is optional but recommended for better user experience

x-callback-url defines several parameters with specific purposes, all of which are optional. These parameters should be passed as query args in the URL, in the format key1=value1&key2=value2. All values should be URL encoded strings. You should use these parameters to provide callback URLs of your app, and handle success/cancel/error completion cases in the app delegate.

  • x-success : URL to open on completion of saving a note. If not provided, the user will stay in the Evernote app after the action is successfully completed.

  • x-cancel : URL to open if the requested action is cancelled by the user. If not provided, the user will stay in the Evernote app after the action is cancelled.

  • x-error : URL to open if the requested action generates an error or failed to complete. In such case, Evernote app will report the failure to the user, log the error in App Log (On Evernote iOS, Settings->Support->Activity Log) and return to the source app. If not present, user will stay in the Evernote app.

Examples

Check out URL scheme examples

evernote-ios-x-callback-url open issues Ask a question     (View All Issues)
  • almost 3 years x-callback-url with type=html crashes evernote
  • about 4 years Add notebook support!
evernote-ios-x-callback-url list of languages used
Other projects in HTML