我们一直在我们的应用程序中使用来自 xamarin 的 iOS Google Maps 组件的最新版本(统一 API)并取得了巨大成功。我们当然拥有适当的 API key ,并且可以使用自定义标记和其他功能全天渲染 map 。
我们的问题是,当应用程序“有时”从后台返回(按下主页按钮)时, map 不再在其上绘制任何数据。 map 是空白的,但 Google Logo 仍在左下角,所以我知道控件尚未卸载。一旦处于这种空白 map 状态,我们必须终止应用程序并重新启动它以开始再次绘制 map 数据。 iOS 日志中没有抛出异常,也没有错误。我做了很多研究,本地图没有正确的 API key 时,这个问题也会出现,但这显然不是我们的场景,除非 map 组件以某种方式失去了 API key 连接?
这可能是什么原因,我们该如何解决?如果没有“快速修复”,我们可以为这个问题支付 xamarin 的支持吗?
这是问题的屏幕截图:
最佳答案
不用担心我在使用这个组件时也遇到了同样的问题
尽量不要将 API Key 保存在任何常量上。直接传值。如果它不起作用,请尝试重新生成 API key 。 map 应
我认为您目前正在遵循此代码模式,就像他们提供的方式一样
using Google.Maps;
...
[Register ("AppDelegate")]
public partial class AppDelegate : UIApplicationDelegate
{
const string MapsApiKey = "<Get your ID at https://code.google.com/apis/console/>";
public override bool FinishedLaunching (UIApplication app, NSDictionary options)
{
MapServices.ProvideAPIKey (MapsApiKey);
...
}
}
您可以直接传递 API key 而不是此代码,如下所示,否则您可能会忘记删除尖括号。
MapServices.ProvideAPIKey ("AIzaSyAnxfhuAwEqdVhQpoUkGFZpsBukOSXVFr0");
快乐编码:)
关于ios - Sdk xamarin 从后台加载空白 map 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28883526/