Iphone iPod touch报告位置不正确
我借了我朋友的第一代iPodtouch来测试我的应用程序。我将操作系统升级到iOS 3.1.3 我一直在关注big nerd ranch的书,并试图在日志中显示位置,但它在视图中,而不是在应用程序代理中 报告了她的位置,但出于某种原因,报告给出了她300多英里以外的地址 单独的地图应用程序报告无法确定我的位置 我打开和关闭了地理定位服务,我只能找到列出的我的家庭网络,这样我就不能让设备忘记她的网络 以下是我正在使用的代码:Iphone iPod touch报告位置不正确,iphone,objective-c,cocoa-touch,geolocation,ipod-touch,Iphone,Objective C,Cocoa Touch,Geolocation,Ipod Touch,我借了我朋友的第一代iPodtouch来测试我的应用程序。我将操作系统升级到iOS 3.1.3 我一直在关注big nerd ranch的书,并试图在日志中显示位置,但它在视图中,而不是在应用程序代理中 报告了她的位置,但出于某种原因,报告给出了她300多英里以外的地址 单独的地图应用程序报告无法确定我的位置 我打开和关闭了地理定位服务,我只能找到列出的我的家庭网络,这样我就不能让设备忘记她的网络 以下是我正在使用的代码: - (void)viewDidLoad { [super vie
- (void)viewDidLoad
{
[super viewDidLoad];
locationManager = [[CLLocationManager alloc] init];
[locationManager setDelegate:self];
[locationManager setDistanceFilter:kCLDistanceFilterNone];
[locationManager setDesiredAccuracy:kCLLocationAccuracyBest];
[locationManager startUpdatingLocation];
}
-(void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation
{
NSLog(@"%@", newLocation);
}
我做错了什么
编辑:我已连接到离她家300英里的家庭网络
此外,日志结果为:
<anumber,anumber>+/- 144.27m (speed -1.00 mps / course -1.00) @ 2009-06-28 17:58:08 +0100
+/-144.27m(速度-1.00mps/航程-1.00)@2009-06-2817:58:08+0100
它似乎认为这是2009年
谢谢大家没什么问题,iPodtouch没有GPS芯片。它使用WiFi ESSID的三角测量来确定其位置
它需要网络连接才能正确执行此操作。看起来它正在使用缓存位置,而在您现在所在的位置,它无法获得位置修复。尝试在一个有很多WiFi的地方(城市/大郊区)再次测试它。此外,请查看是否可以在地图应用程序中找到位置。有一次,WiFi路由器上的时区设置不正确,iPod上的位置信息也有问题 检查您的路由器设置。您有iPhone吗
- 确保GPS处于打开状态(运行地图一段时间,在蓝色圆点周围画一个小的精确圆圈)
- 确保它可以看到您的WiFi网络(加入它)
将设备与iTunes同步,并希望苹果的位置/ESSID数据库在不久的将来由这些iPhone更新:)它连接到我的家庭网络……这还不够吗?而且它显然以某种方式得到了当前的纬度和经度。我猜是用她的家庭网络通过无线网络三角测量的。为什么它不能重复这个过程?没有三角测量。它会询问Skyhook Wireless您的wifi网络的位置。要了解Skyhook为何会被关闭300英里:苹果。感谢@nevan,地图应用程序一直在说“无法确定您的位置”,您的应用程序将使用与地图应用程序相同的硬件。也许地图应用程序有一些代码来检测旧的位置数据并忽略它。如果没有带GPS芯片的iPhone(iPhone 3G以上)或触摸屏,再加上离很多WiFi很近的话,要正确测试位置码是不容易的。Touch使用WiFi ID和GPS数据库猜测位置。我检查过了,路由器报告了正确的日期,它从互联网上获取