亥 我们可以不使用gps知道当前位置吗?有可能吗?
答案 0 :(得分:7)
iPhone SDK有一个框架,可根据结果的准确程度自动利用适当的机制来确定位置。 Apple有一个good article discussing these different methods of locating a device。
另外,here is a good starting point用于了解使用位置服务进行编程。
此外,您可以dive right into the CoreLocation framework documentation了解使用iOS上的位置服务可以执行的所有操作。
答案 1 :(得分:4)
是的,CoreLocation可以通过附近的手机信号塔对您的位置进行三角测量,但其位置不如GPS准确。此外,它可以通过附近的WLAN获取您的位置,但这更不可靠。
答案 2 :(得分:3)
核心位置可以满足您的需求(通过使用Wi-Fi三角测量)。查看CLLocationManager
的文档答案 3 :(得分:2)
试试这个
map.showsUserLocation = YES;
map是我的MKMapView对象。
答案 4 :(得分:2)
这是一个非常广泛而且非常普遍的问题。如果你正在谈论手机,你可以使用三个塔架三角测量,当你同时击中三个塔时,这是很好的,但如果你只打一个,那么误差可能会达到几公里。
现在,如果你正在谈论互联网访问设备(即具有IP地址的东西),那么事情会变得很糟糕。如果您使用固定接入点,您将使用距离设备所在IP范围最近的已知集线器进行近似估算。具有IP的移动设备很难精确定位。
答案 5 :(得分:2)
更多链接
http://mithin.in/2009/06/22/using-iphone-sdk-mapkit-framework-a-tutorial
http://www.icodeblog.com/2009/12/22/introduction-to-mapkit-in-iphone-os-3-0-part-2/
和分步指南。
http://gigaom.com/apple/iphone-dev-sessions-finding-your-way-with-mapkit/
答案 6 :(得分:1)
添加到@ Jenifer的回答
showsUserLocation
<强>讨论强>
此属性未指明 用户的位置是否是 实际上只在地图上可见 是否允许地图视图 显示它。判断是否 用户的位置是可见的,使用 userLocationVisible属性。该 此属性的默认值为NO。
将此属性设置为YES会导致 地图视图以使用核心位置 找到当前的框架 location。只要这个属性是 是的,地图视图继续跟踪 用户的位置并更新它 周期性。
核心位置框架
核心位置框架可以让您 确定当前位置或 与设备关联的标题。该 框架使用可用的硬件 确定用户的位置和 标题。你使用类和 这个框架中的协议 配置和安排交付 位置和航向事件。您可以 也用它来定义地理 区域和监视用户 越过那些边界 区域。
如果您想知道Core Location如何执行此操作
它实际上使用了几种机制。
基于速度,精度和可用硬件进行权衡。第一代iPad只有3种选择,而iPhone模拟器则使用最后一种机制。
您可以在地图应用程序中观察这些系统的差异,它最初根据手机信号塔进行猜测,然后通过GPS优化猜测。
只有选项#3需要数据连接。
对于包括#4在内的幽默障碍者来说并不完全严重,尽管它在功能上是正确的。 (我认为他们模拟GPS报告该位置而不仅仅是对其进行硬编码,但我还没有检查过。)
答案 7 :(得分:0)
iPod Touch就是这样的。它没有GPS芯片,而是使用该地区可用的WiFi网络来大致了解您所在的位置。