我现在正在考虑一个适用于iOS的应用程序,该应用程序可以通过URL链接向其他人(没有Internet连接)发送短信,以便在他们点击链接时将他们离线指向我在原生地图应用中的位置。 我知道可以使用这种URL来完成:
http://maps.apple.com/maps?saddr=<their location>&daddr=<my location, filled by my app>
当然,我可以将saddr
留空,让他们从自动填充列表中选择当前位置作为起始点,但是它还需要一步才能获得方向。我只想确保给他们最方便的方式。
如何引导原生地图应用程序通过此URL自动获取SMS接收者用户的当前位置?我需要这样的事情:
http://maps.apple.com/maps?saddr=current_location&daddr=<my location, filled by my app>
我还想将此链接发送给其他平台用户,就像我可以使用的Android用户一样:
http://maps.google.com/maps?saddr=current_location&daddr=<my location, filled by my app>
Windows Phone(我还不知道):
http://maps.???.com/maps?saddr=current_location&daddr=<my location, filled by my app>
非常感谢任何关键字或答案!
答案 0 :(得分:12)
你非常接近!
Apple Maps:
http://maps.apple.com/maps?saddr=Current%20Location&daddr=<Your Location>
Google地图:
comgooglemaps-x-callback://?saddr=&daddr=<Your Location>
答案 1 :(得分:3)
如果您使用的是objective-c:
NSString *urlString = [NSString stringWithFormat:@"maps.apple.com/maps?saddr=&daddr=%@,%@",destinationLatitude,destinationLongitude];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:urlString]];
如果您使用的是swift 2.2:
var string = "http://maps.apple.com/?saddr=&daddr=\(destinationLatitude),\(destinationLongitude)"
UIApplication.sharedApplication().openURL(NSURL(string: string)!)
如果您使用的是swift 3.0:
var string = "http://maps.apple.com/?saddr=&daddr=\(destinationLatitude),\(destinationLongitude)"
UIApplication.shared.openURL(URL(string: string)!)