Javascript 从java脚本函数调用objective c方法以获取url
我在主iOS项目中将Javascript 从java脚本函数调用objective c方法以获取url,javascript,ios,objective-c,Javascript,Ios,Objective C,我在主iOS项目中将video.ma设置为我的“URL模式”。我使用以下方法从浏览器中获取总的url: - (BOOL)application:(UIApplication*)application handleOpenURL:(NSURL*)url { NSLog(@"Tulon %@", url); if (!url) { return NO; } // calls into javascript global function '
video.ma
设置为我的“URL模式”。我使用以下方法从浏览器中获取总的url
:
- (BOOL)application:(UIApplication*)application handleOpenURL:(NSURL*)url
{
NSLog(@"Tulon %@", url);
if (!url)
{
return NO;
}
// calls into javascript global function 'handleOpenURL'
NSString* jsString = [NSString stringWithFormat:@"handleOpenURL(\"%@\");", url];
[self.viewController.webView stringByEvaluatingJavaScriptFromString:jsString];
// all plugins will get the notification, and their handlers will be called
[[NSNotificationCenter defaultCenter] postNotification:[NSNotification notificationWithName:CDVPluginHandleOpenURLNotification object:url]];
return YES;
}
我将此方法放在App delegate中,如果我尝试在浏览器中输入上方的url
(video.ma
),它会将我从浏览器重定向到我的应用程序中。我可以通过NSLog
获取url
现在,这是我在js.file中的js函数:
function handleOpenURL(url)
{
// TODO: parse the url, and do something
document.write(url);
}
但是它没有得到下面的
url
。我怎么了?你为什么要这样做?我猜您想在本机浏览器中打开url。谢谢您的评论。不,我必须将url传递到.js
文件。不管怎样,我已经得到了答案。我的javascript开发人员在本地声明js函数,而不是在全局声明js函数。这就是它不起作用的原因。在我看来,代码都很好。祝你过得愉快,亲爱的。