如何在 Android 中显示 google 地图(显示当前位置并显示到目的地的距离)
How to display google maps in Android (which takes to current location and show the distance to destination)
switch (Device.RuntimePlatform)
{
case Device.iOS:
url = String.Format("https://maps.apple.com/maps?daddr={0}", Uri.EscapeDataString(Shop.Address.StreetZipCityString));
break;
case Device.Android:
url = String.Format("geo:0,0?q={0}", Uri.EscapeDataString(Shop.Address.StreetZipCityString));
break;
default:
url = String.Format("https://www.google.com/maps/dir/?api=1&query={0}", Uri.EscapeDataString(Shop.Address.StreetZipCityString));
break;
}
在 IOS 中,此 URL 将我带到当前位置并显示目的地。
在 android 中,仅显示目的地,而不显示当前位置或从当前位置到目的地的距离。
我认为您需要使用 HttpUtility.UrlEncode 对目标地址进行编码
你能试试吗url = String.Format("geo:0,0?q={0}", Uri.EscapeDataString(HttpUtility.UrlEncode(Shop.Address.StreetZipCityString)));
switch (Device.RuntimePlatform)
{
case Device.iOS:
url = String.Format("https://maps.apple.com/maps?daddr={0}", Uri.EscapeDataString(Shop.Address.StreetZipCityString));
break;
case Device.Android:
url = String.Format("geo:0,0?q={0}", Uri.EscapeDataString(Shop.Address.StreetZipCityString));
break;
default:
url = String.Format("https://www.google.com/maps/dir/?api=1&query={0}", Uri.EscapeDataString(Shop.Address.StreetZipCityString));
break;
}
在 IOS 中,此 URL 将我带到当前位置并显示目的地。 在 android 中,仅显示目的地,而不显示当前位置或从当前位置到目的地的距离。
我认为您需要使用 HttpUtility.UrlEncode 对目标地址进行编码
你能试试吗url = String.Format("geo:0,0?q={0}", Uri.EscapeDataString(HttpUtility.UrlEncode(Shop.Address.StreetZipCityString)));