如何在 Xamarin 中使用 Google Map id?
Posted
技术标签:
【中文标题】如何在 Xamarin 中使用 Google Map id?【英文标题】:How to use Google Map id in Xamarin? 【发布时间】:2022-01-07 13:39:33 【问题描述】:我想在我的 Xamarin 应用中应用来自 Google Maps Platform 的样式。 我找到了 Java 的解决方案,但我不知道如何在 Xamarin 中做同样的事情。 https://developers.google.com/maps/documentation/android-sdk/get-map-id
【问题讨论】:
github.com/amay077/Xamarin.Forms.GoogleMaps @Jason 我没有找到设置地图 ID 的方法 【参考方案1】:您想在 Xamarin 应用程序中使用 Google 地图,对吗?
然后在xamarin android中,你可以查看文档Obtaining a Google Maps API Key。
您需要向 Google 注册 Maps API 密钥。在您执行此操作之前,您只会在应用程序中看到一个空白网格而不是地图。您必须获取 Google Maps Android API v2 密钥 - 旧版 Google Maps Android API 密钥 v1 的密钥将不起作用。
获取 Maps API v2 密钥的步骤:
检索用于签名的密钥库的 SHA-1 指纹 应用程序。
在 Google API 控制台中创建一个项目。
获取 API 密钥。
对于xamarin form app,你可以在浏览器中输入关键字Setup Maps in Your Xamarin.Forms Apps
,有一些有用的教程。
还有一个示例,您可以在这里查看:Xamarin.Forms.Maps Sample App。
更新:
Xamarin.Forms.GoogleMaps 库它已经支持将样式应用于 Google 地图。步骤是使用地图的 MapStyle 属性添加样式并在那里加载我们的 JSON 文件。
void AddMapStyle()
var assembly = typeof(MainPage).GetTypeInfo().Assembly;
var stream = assembly.GetManifestResourceStream($"TrackingSample.MapStyle.json");
string styleFile;
using (var reader = new System.IO.StreamReader(stream))
styleFile = reader.ReadToEnd();
map.MapStyle = MapStyle.FromJson(styleFile);
而在Google Cloud platform,你可以按照步骤来实现这个功能。在那里您可以自己创建样式。
创建样式后,您可以添加地图ID并与此样式关联。
【讨论】:
我需要使用地图 ID 将云样式应用于地图。我在 Xamarin 中找不到如何执行此操作。 我已经更新了答案,你可以查一下。 感谢您的回答,但这种情况下的 JSON 样式不支持设置 3d 建筑物的颜色,这与 Google Cloud Platform 中的地图样式不同 ` 这种情况下的 JSON 样式不支持设置 3d 建筑物的颜色` 这是另一个问题。一个问题,一个线程。您可以为这个问题创建一个新线程。感谢您对 xamarin 的支持。以上是关于如何在 Xamarin 中使用 Google Map id?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 API 在 google map xamarin iOS 上更新 PIN 中的信息