我正在尝试将最流行的导航应用程序集成到我的应用程序中,以及所有我选择工作的应用程序,但Sygic除外。
在this guide之后,我编写了代码:
NSString *URL = [NSString stringWithFormat:@"com.sygic.aura://coordinate|%f|%f|drive",
self.coordinate.longitude,
self.coordinate.latitude];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:URL]];
但是,当代码运行时,Sygic无法打开,什么也没发生。如果安装了应用程序,则检查
[[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"com.sygic.aura://"]]
会返回YES
;如果未安装,则返回NO
(应如此)。我使用版本13的“Sygic Brasil”和“Sygic(所有地区)”进行了测试,但都无法打开。
我还尝试了对URL字符串进行百分比转义,但这也不起作用。
最佳答案
您尝试遵循以下代码,
NSString *URL = [NSString stringWithFormat:@"com.sygic.aura://coordinate|%f|%f|drive",
self.coordinate.longitude,
self.coordinate.latitude];
NSURL *newURL = [NSURL URLWithString:[URL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding] ];
if(newURL)
{
[[UIApplication sharedApplication] openURL:newURL];
}
else
{
NSLog(@"Something wrong with lat or long or both");
}
关于ios - Sygic URL方案-应用程序无法打开,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20784681/