html5中URL打开手机上的地图APP,能做到吗?比如我手机上装了几个地图APP,提示我自由选择用那个?请高手
阿神2017-04-17 11:53:02
這個很簡單。
android的話,可以先看看官方的文檔
app-intent
程式碼,我記不得非常清楚了,應該是這樣的。
Uri uri = Uri.parse("geo:0,0"); // 0, 0代表经纬度
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
iOS的話就稍微麻煩一些,你要自己根據選擇去開啟對應的APP,例如googlemap
google map sdk for ios
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"comgooglemaps://?center=40.765819,-73.975866&zoom=14&views=traffic"]]
或使用官方的apple map
Map Links
NSURL *url = [NSURL URLWithString:@"http://maps.apple.com/?q=cupertino"]
所以你要做的就是
<html>
<body>
<!-- android -->
<a href="geo:0,0">my location</a>
<!-- ios -->
<a href="http://maps.apple.com/?q=cupertino">my location</a>
</body>
</html>
高洛峰2017-04-17 11:53:02
做一個中間頁,例如 redirect.html
然後加入
<script type="text/javascript">
window.location.href = "appleMap://";
setTimeout( function(e){ window.location.href = "gmap://"; },200);
setTimeout( function(e){ window.location.href = "bdmap://";....},400);
setTimeout( function(e){ window.location.href = "gmap://";},600};
</script>
至於具體的 url
和 during
自己調吧,我以前設定的好像 200
就夠用了...
應用的原理是:如果 url
能打開,則會跳到對應 app