Shazron Abdullah created CB-853:
-----------------------------------
Summary: Change custom URL scheme handling in iOS
Key: CB-853
URL: https://issues.apache.org/jira/browse/CB-853
Project: Apache Cordova
Issue Type: Bug
Components: iOS
Reporter: Shazron Abdullah
Assignee: Shazron Abdullah
Fix For: 2.0.0
Don't know about the other platforms, but there are two ways it is handled in
iOS right now, we need to consolidate.
Summary:
The url scheme passed to the app is a form of inter-process communication,
kinda like how we do gap:// urls, but this is up to the app developer on how
they marshal/unmarshal the url into something they can use.
Right now in iOS, it is a bit confusing - there are two ways that the URL is
handled and passed off to the UIWebView.
1. On *first* app startup, the URL sent is passed off to the UIWebView by
setting a global variable - *window.invokeString*. The URL is passed off
untouched (see:
https://github.com/apache/incubator-cordova-ios/blob/master/Cordova-based%20Application/Classes/AppDelegate.m#L67)
2. On *subsequent* launches, i.e. resume from background (multi-tasking), the
handleOpenURL function is called instead, and this in turn calls the global
JavaScript function in the UIWebView *window.handleOpenURL()* and this is
passed the URL, untouched (see:
https://github.com/apache/incubator-cordova-ios/blob/master/Cordova-based%20Application/Classes/AppDelegate.m#L126)
Apple Doc reference:
http://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/AdvancedAppTricks/AdvancedAppTricks.html#//apple_ref/doc/uid/TP40007072-CH7-SW21
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira