加载优化模型失败 - GoogleMaps SDK IOS
Posted
技术标签:
【中文标题】加载优化模型失败 - GoogleMaps SDK IOS【英文标题】:Failed to load optimized model - GoogleMaps SDK IOS 【发布时间】:2017-11-11 10:14:13 【问题描述】:从 CocoaPods 安装 Google Maps SDK 后出现此错误。
CoreData: annotation: Failed to load optimized model at path '/Users/nabeel/Library/Developer/CoreSimulator/Devices/96078737-8063-4BC1-97DB-7FECEC6835D9/data/Containers/Bundle/Application/972CD686-82DD-4357-9CDD-65A735D82190/My-APP-Beta.app/GoogleMaps.bundle/GMSCacheStorage.momd/StorageWithTileVersionID.omo'
CoreData: annotation: Failed to load optimized model at path '/Users/nabeel/Library/Developer/CoreSimulator/Devices/96078737-8063-4BC1-97DB-7FECEC6835D9/data/Containers/Bundle/Application/972CD686-82DD-4357-9CDD-65A735D82190/My-APP-Beta.app/GoogleMaps.bundle/GMSCacheStorage.momd/StorageWithTileVersionID.omo'
CoreData: annotation: Failed to load optimized model at path '/Users/nabeel/Library/Developer/CoreSimulator/Devices/96078737-8063-4BC1-97DB-7FECEC6835D9/data/Containers/Bundle/Application/972CD686-82DD-4357-9CDD-65A735D82190/My-APP-Beta.app/GoogleMaps.bundle/GMSCacheStorage.momd/StorageWithTileVersionID.omo'
我再次尝试了 pod update 和 pod install 但同样的问题。
【问题讨论】:
我也遇到同样的错误 我也有同样的问题 转到 console.developers.google.com/apis/api/… ,选择 Library 并启用 Google Maps SDK for ios 【参考方案1】:如果您已经使用应用程序包标识符here 的 APIkey 仔细检查了“google maps ios-sdk”的基本设置,并且仍然遇到同样的问题,那么您可能没有启用 google maps API。转到https://console.developers.google.com 上的应用项目仪表板,然后单击“启用 API 和服务”。在那里,在 MAPS 部分下选择“the Google maps sdk for ios”并启用它。
【讨论】:
这对我有用。我使用的是没有 iOS 应用限制的 Api 密钥,并且启用了 Google map ios sdk。所以我创建了一个带有 iOS 应用限制的新密钥,并提供了 bundle id 并启用了 Google map ios sdk。 但是遇到另一个问题,地图在父视图中加载,但在任何子视图中都没有加载。 哦,这是另一个问题,您应该创建并显示一些代码以便回答。也许你可以在这里分享一个链接? 重要提示! :如果地图显示正常,但消息“CoreData: annotation: Failed to load optimization model at path ... /GMSCacheStorage.momd/StorageWithTileVersionID.omo'”仍然显示,那么这是来自 google maps ios sdk 的问题。 . 这是它的问题跟踪器:issuetracker.google.com/issues/64504919 我已经完成了所有这些,但地图仍然无法加载。它对我不起作用【参考方案2】:-
选择 [APP-NAME].app 并在 finder 中显示它并显示包内容。
您将看到 GoogleMaps.bundle,右键单击并显示它的包内容。
进入 GMSCacheStorage.momd 文件夹。
删除 StorageWithTileProto.omo。
之后这些错误就消失了。
【讨论】:
我尝试删除 StorageWithTileProto.omo,但是当我运行我的应用程序 agin 时它正在生成 agin。并再次显示错误日志。【参考方案3】:从 Project Navigator(在 Xcode 中)展开 GoogleMaps.bundle
,然后展开 GMSCacheStorage.momd
文件夹。现在从该文件夹中删除StorageWithTileProto.omo
文件并再次运行项目。
【讨论】:
你的意思是这解决了模拟器中的问题,而在生产中我们不需要它?我的意思是这个文件会在生产中再次生成?对不起这里的初学者。【参考方案4】:我刚刚遇到了另一个带有相同警告的问题。 地图工作正常,但控制台中几乎没有警告。 我四处搜索并找到了这个解决方案。
在项目导航器中转到产品组并选择您的 [APP-NAME].app,然后在查找器中显示并选择显示包内容
现在您将看到您的 [APP-NAME].momd 文件夹。打开它你会看到你的[APP-NAME].omo
将 [APP-NAME].omo 移至回收站并再次运行项目
现在不应在控制台中显示日志消息。
注意:不要删除任何 .mom 文件
【讨论】:
我找不到 [APP-NAME].momd 文件夹【参考方案5】:查看此链接,了解有时会导致 GoogleMaps SKD 2.4 和 2.5 崩溃的错误,包括我的案例 (2.5):
https://issuetracker.google.com/issues/64504919
也试试:
Command + Shift + B
我知道,这听起来可能很傻,但我花了几个小时,这最终解决了我的问题!毕竟是干净的建筑!
遇到同样问题的一些人建议将 SDK 降级到 2.3,我这样做了,结果是一样的,而且我的代码一直在崩溃,所以我不得不更新回 2.5
【讨论】:
【参考方案6】:我遇到了这个问题。我只是忘了添加 view = mapView。 将此添加到您的 viewDidLoad :
override func viewDidLoad()
super.viewDidLoad()
view = mapView
mapView?.delegate = self
let camera = GMSCameraPosition.camera(withLatitude : 0.0 , longitude : 0.0, zoom :6.0)
mapView = GMSMapView.map(withFrame : CGRect.zero , camera : camera)
【讨论】:
这与问题无关。以上是关于加载优化模型失败 - GoogleMaps SDK IOS的主要内容,如果未能解决你的问题,请参考以下文章
Swift - GoogleMaps SDK 获得单指或双指点击手势
适用于 iOS 的 Google Maps SDK 要求 GoogleMaps.bundle 成为“复制捆绑资源”下目标的一部分
我可以将适用于 iOS 的 GoogleMaps SDK 与 -ObjC 以外的链接器标志链接吗
VS2019打开项目加载失败:无法找到 .NET Core SDK。请检查确保已安装此项且 global.json 中指定的版本(如有)与所安装的版本相匹配