问题标签 [google-maps-sdk-ios]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 如何在 GMSMapView 中显示一个圆圈
我需要在 GMSMapView 上显示一个圆圈(与 MKCircle 一样)。这在使用 MKMapView 和 MKCircle 时很容易,但不能将 MKCircle 与 GMSMapView 一起使用。有任何想法吗?
更新:
这是当前(18.03.2013)选项:
1. 包含圆形图像的地面标记。
2. 一个由几段组成的圆(折线)。
编辑:
3. 谷歌添加了 GMSCircle (23.04.2013)
对于 40x40 像素的圆形图像,它看起来不错。(半径约为 100 m)
小分段路径解决方案:
编辑:08.05.2013
GMSCircle 解决方案:
ios - 不能将谷歌地图 GMSMapView 放在主视图的子视图中?
我正在努力解决这个问题!我想将谷歌地图添加GMSMapView
到UIView
只是UIView
我的主要部分的一部分ViewController
。
它应该很简单......我用UIView
我想要的大小的情节提要 a 创建并将它放在 main 中UIView
。
来自接口文件的片段:
将 mapView 与UIView
main中的 this 链接UIView
。
我在实施中做了什么:
这应该有效,不是吗?我得到的是我的内部 UIView 是空的。
如果我按照 google 的启动指南Google Map Integration Document实例化地图,它可以工作,但它会将地图分配给 MAIN UIView,这是另一回事。
我什至尝试将情节提要中的 mapView 的类从UIView
更改为GMSMapView
. 地图显示在内部视图中,但它以一种奇怪的方式初始化
- 系统抛出错误说
“无法制作完整的帧缓冲区”
并大大减慢了视图的加载速度(在模拟器上需要 2-3 秒)
- 在该
viewDidLoad
方法中完成的任何相机更改中,地图都没有响应。
有什么建议么?
我在 StackOverflow 上阅读了一些帖子,但找不到有效的解决方案:(
ios - 如何使用适用于 iOS 的 Google Maps SDK 绘制圆圈?
我真的对这个问题感到困惑。我想在我的 iOS 应用程序中的谷歌地图上画圈。在 SDK 帮助中仅提供多边形示例。有人有同样的问题吗?
google-maps-sdk-ios - 在同一应用中切换 Google Maps SDK 和 Mapkit 会导致崩溃
我创建了一个使用 MapKit 和 GoogleMaps 框架的非常简单的应用程序,并尝试在两个地图之间切换。我正在使用 ARC (ios 6.1) 和 Google Maps SDK for iOS 版本:1.1.1.2311。在几次切换后,应用程序崩溃了[EAGLContext setCurrentContext:]
——总是在 MapKit 代码中。在之前的帖子中有一些建议 - 尝试[EAGLContext setCurrentContext:nil]
在不同的地方设置,但它没有帮助。
optimization - GMSPolyline 非常大的内存峰值
在允许用户显示复杂位置点列表的 GPS 应用程序中,我们在各种不同类型的地图上称为轨迹,每个轨迹可以包含 2k 到 10k 个位置点。当在非 Google 地图类型上呈现时,轨道会被大量剪辑、修剪和路径简化。这是为了降低内存使用率并提高性能。即使在最坏的情况下,我们通常也只会向 OpenGL 管道提交远少于一千个(聚合)转换后的位置点。
在集成适用于 iOS 的 Google Maps SDK 时,我们最初尝试继续利用我们自己的 OpenGL 轨迹渲染系统,但遇到了 OpenGL 上下文使用冲突的问题(渲染有效,但我们无法获取 GMSMapView 和我们自己的内部 OpenGL 资源在没有人接触已删除内存的情况下释放)。
因此,我们尝试利用 GMSPolyline 构造并让 Google SDK 进行轨迹渲染,但我们遇到了主要的内存使用问题,并且正在寻找解决这些问题的指导。
使用 Xcode Instruments,我们在创建大约 25 条折线时监控了内存使用情况,总共有大约 23k 个位置点(不是每条)。在折线创建过程中,应用程序内存使用量从大约 14 MB 增长到大约 172 MB,净峰值约为 158 MB。在创建所有折线后不久,内存使用量最终回落到 19 MB 左右,并且看起来很稳定,累积网络约为 5 MB,因此每个位置点似乎需要大约 220 字节(5 MB / 23k 点)来店铺。
伤害我们的是内存使用高峰。虽然我们的实验室测试只使用了 23k 个位置点,但在现实世界中通常还有更多,而且 iOS 似乎在Google 地图在iPhone 5上消耗了大约 450 MB之后抛弃了我们的应用程序(而我们内部的折线渲染系统在大约12 MB 用于相同的测试用例)。
显然,该GMSPolyLine
构造不适用于我们需要的重量级使用。
我们尝试用单独的自动释放池包装一些折线创建循环,然后在适当的点排空它们,但这对内存使用没有影响。创建多段线并将控制权返回到主运行循环后的峰值内存使用根本没有改变。后来很清楚为什么;在创建折线后的第一个 DisplayLink 回调之前,Google 地图系统不会释放资源。
我们接下来的工作将是手动限制我们在 GMSPolyline 推送的数据量,可能使用我们自己的边界测试、裁剪、修剪和最小化,而不是依靠谷歌地图来有效地做到这一点。
这里的缺点是这意味着更多的 GMSPolyline 对象将被分配和释放,可能在用户平移/缩放地图时。这些对象中的每一个都将具有更少的位置点,但我们仍然担心这种方法的不可预见的后果,许多 GMSPolyline 分配和释放的隐藏开销。
所以问题是,处理这种情况的最佳方法是什么,谷歌的人能否阐明任何GMSPolyline
最佳实践、上限、瓶颈等?
google-maps-sdk-ios - GMSMapView 内存泄漏
我创建了一个简单的 UIViewController 来创建和销毁 GMSMapView。
我已将 Instruments 与 Allocations 工具一起使用。测试很容易。在 UINavigation ViewController 中,推送视图,回击并重复。每次推送和弹出包含上述 GMSMapView 的视图时,大约有 40kb 泄漏。我有一张来自 Instruments 的截图来说明这一点,但 stackoverflow 不允许我发布它。如果有兴趣,我可以通过电子邮件发送给某人。
我做错了什么或错过了什么?
ios - googlemap sdk 与 ios 架构有问题
由于苹果地图adk在街道细节上没有很详细,而且谷歌已经提供了新的sdk,我试图把它作为当前ios 6的解决方法,我面临的问题是它抛出错误无论您在设置中放置了什么架构,以下都是错误,尽管在 sdkmapdemo 运行时它可以正常工作:(
google-maps-sdk-ios - 在 iOS 谷歌地图 App 上展示整个世界
是否可以选择以某种方式缩小使用新的 Google Maps sdk 创建的 iOS 应用程序?比如展示整个世界?
ios - 移动覆盖 Google Maps iOS SDK
我基本上是在尝试随着时间的推移沿着路径移动叠加层。这就是我现在的做法:
想象一下,这一切都在一个 NSTimer 中,每次都有新的位置值。
它基本上可以工作,但有时会引入一些闪烁,这是有道理的,因为正在删除一个叠加层并添加一个新叠加层。是否有一种功能可以实际更改叠加层的位置,而无需删除旧叠加层并添加新叠加层?
xcode - 地图相机位置急剧变化,没有动画
我使用适用于 iOS 的谷歌地图 SDK。我的地图上有标记,并且想要设置适当的缩放比例,以便标记是分开的,并且标记应该同时在屏幕上可见。我能够做到。我已经使用逻辑完成,如果所有标记都可见然后放大。但问题是地图相机正在急剧变化。我尝试了很多动画这个缩放,但我没能做到。我尝试了 animateToCameraPosition、animateToZoom 和 UIView 动画方法。
我还尝试在 if 条件的 while 循环中颠倒设置 mapview 相机和动画相机的顺序。我花了3天时间才这样做。现在寻求您的帮助。先感谢您。