- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《从零开始学iOS7开发系列3-我的地盘我做主-Cha9》.pdf
从零开始学iOS7开发系列3-我的地盘我做主-Cha9 原⽂及⽰例代码来⾃raywenderlich store中的iOS Apprentice 系列3教程,经过翻译和改编。 版权归原作者所有,本系列教程仅供学习参考使⽤,感兴趣的朋友建议购买原英⽂教程教程(The iOS Apprentice Second Edition: Learn iPhone and iPad Programming via Tutorials!)。 购买链接: /store 最近玩炉⽯有点迷,顺便看了下⽐较⽕的⼏个⽆节操(⾮贬义)游戏解说视频,⽐如夏⼀可,星际 少帮主,毕游侠神⻢的,推荐⼤家假期可以好好看看,玩玩。 神⻢?你竟然问我天梯排名多少?这不是拍脸⾄死的节奏吗?! 那啥,我们还是开始学习本课的内容吧,看我怎么⽤各种SY (术 语)虐死你。 ⾸先还是回顾下上期节⺫内容。恩,怎么觉得哪⾥有点不对。 在上⼀期节⺫中,我们学习了如何利⽤Core Location框架来获取⼀个CLLocation对象,⽽且了解了 如何处理不同的错误信息。接下来该肿么办? 好吧,如果你够细⼼,会看到Core Location⼀直在努⼒寻找新的位置信息对象,⼀直在努⼒,⼀直 在努⼒即便最终的坐标已经不再发⽣任何变化了,还是⼀直在努⼒,⼀直在努⼒…这是因为⽤户 可能会时不时⾛两步,然后他们的位置信息也的确发⽣变化了。不过这⾥我们不打算搞⼀个导航应 ⽤,因此当我们觉得位置信息已经⾜够准确了以后,就需要通知location manager停⽌发送位置信息 更新。 这⼀点很重要,因为获取位置信息更新很耗电,因为在这个过程中需要保持GPS/Wi-Fi/蜂窝⺴络信 号的开启。⽽我们这款应⽤并不需要随时请求GPS信息,因此当位置信息差不多了的时候就该消停 ⼀会⼉了。 问题在于,怎么来判断这个位置信息已经⾜够精确了呢? 这个的确要动⼀下脑⼦。这⾥给出的解决办法是:如果最后获得的⼏个坐标信息没有明显的变化, 那么就说明位置信息基本上就差不多准确了,此时就可以让定位的硬件元件休息下省省电了。 在CurrentLocationViewController.m中更改didUpdateLocations⽅法如下: -(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations{ CLLocation *newLocation = [locations lastObject]; NSLog(@ 已更新坐标,当前位置:%@,newLocation); if([newLocation.timestamp timeIntervalSinceNow] -5.0){ return; } if(newLocation.horizontalAccuracy 0){ return; } if(_location == nil || _location.horizontalAccuracy newLocation.horizontalAccuracy){ _lastLocationError = nil; _location = newLocation; [self updateLabels]; if(newLocation.horizontalAccuracy = _locationManager.desiredAccuracy){ NSLog(@*** ⺫标诺森德!成功完成定位); [self stopLocationManager]; } } } 上⾯这段代码有点⻓,我们还是⼀步步来看吧: if([newLocation.timestamp timeIntervalSinceNow] -5.0){ return; } 如果获取最近⼀个位置信息对象的时间太⻓(这⾥设置的阀值是5秒),那么它就是⼀个所谓的 cached (缓存)结果。location manager并⾮⼀直向
您可能关注的文档
最近下载
- 第五单元草原牧歌——《父亲的草原母亲的河》课件2024-2025学年人音版(2024)初中音乐七年级上册.pptx VIP
- (2025秋新版)部编版八年级上册道德与法治《第三课共建网络美好家园》ppt课件.pptx
- NB-T11409-2023水电工程费用构成及概(估)算费用标准.pdf VIP
- 养鸡技术大全技术详略 - 畜牧.docx VIP
- 苏教版六年级上册《科学》全套教学课件(共531页PPT).pptx
- 湘科版2017版小学科学六年级【上册】全册教案详解.pdf VIP
- 宗教事务条例培训.pptx
- 慢性痛风性关节炎伴多发性痛风石一例并文献复习.pdf VIP
- 5.1 认识大数据 课件 粤教版(2019)高中信息技术必修1.pptx VIP
- 23J916-1 住宅排气道(一)图集.pdf VIP
文档评论(0)