IOS8 Map-持续更新
来源:互联网 发布:知乎 苏享茂事件始末 编辑:程序博客网 时间:2024/06/05 20:34
- 在info.plist中添加key:
NSLocationWhenInUseUsageDescription :当app在前台的时候,才可以获取到定位信息NSLocationAlwaysUsageDescription :app在前台、后台、挂起、结束进程状态时,都可以获取到定位信息
这两个key对应的值都是NSString,简要填写为何需要定位,比如Location is required to find out how many steps you run。 NSLocationAlwaysUsageDescription
字符串类型(需要设置值),切换到后台等10分钟后,在进入程序不会重新载入,会一直运行。
- 向用户申请获取定位请求:
[locationManager requestWhenInUseAuthorization];//相对应info.plist中的NSLocationWhenInUseUsageDescription键 [locationManager requestAlwaysAuthorization];//相对应info.plist中的NSLocationAlwaysUsageDescription键
- ios8下所有授权状态说明:
kCLAuthorizationStatusNotDetermined:用户还没有被请求获取授权,只第一次出现kCLAuthorizationStatusRestricted:用户在设置里关闭了位置服务kCLAuthorizationStatusDenied:用户收到获取授权的请求,但点击了NO,或者在设置里关闭了kCLAuthorizationStatusAuthorized:用户收到获取授权的请求,点击了YES;(此状态在ios8废弃了,ios7以及以下可用)kCLAuthorizationStatusAuthorizedAlways = kCLAuthorizationStatusAuthorized用户授权app在任何时候获取位置信息kCLAuthorizationStatusAuthorizedWhenInUse:用户授权app在前台获取位置信息
ios 里如何判断当前应用的定位服务是否可用
(用户开启了定位服务&&(用户还没有被请求获取授权||用户收到获取授权的请求,点击了YES)),此时就可以初始化定位服务了
([CLLocationManager authorizationStatus] == kCLAuthorizationStatusAuthorized || [CLLocationManager authorizationStatus] == kCLAuthorizationStatusNotDetermined)) { //定位功能可用,开始定位 _locationManger = [[CLLocationManager alloc] init]; locationManger.delegate = self; [locationManger startUpdatingLocation]; } else if ([CLLocationManager authorizationStatus] == kCLAuthorizationStatusDenied){ NSlog("定位功能不可用,提示用户或忽略"); }
如果需要定位,
NSURL *settingsURL = [NSURL URLWithString:UIApplicationOpenSettingsURLString]; [[UIApplication sharedApplication] openURL:settingsURL];
让用户自己去选择,而且可以改变kCLAuthorizationStatusAuthorizedAlways和kCLAuthorizationStatusAuthorizedWhenInUse也可以用
百度地图计算坐标之间直线距离
-(double)distanceBetweenOrderBy:(double)lat1 :(double)lat2 :(double)lng1 :(double)lng2{ CLLocation* curLocation = [[CLLocation alloc] initWithLatitude:lat1 longitude:lng1]; CLLocation* otherLocation = [[CLLocation alloc] initWithLatitude:lat2 longitude:lng2]; double distance = [curLocation distanceFromLocation:otherLocation]; return distance;}
百度地图计算坐标之间步行距离
-(void)distanceInfo{ if (!self.routeSearch) { self.routeSearch = [[BMKRouteSearch alloc] init]; self.routeSearch.delegate = self; } BMKPlanNode *start = [[BMKPlanNode alloc] init]; CLLocationCoordinate2D cloStart; cloStart.latitude = [[self.dictData valueForKey:@"courierLatitude"] doubleValue]; start.pt = cloStart; BMKPlanNode *end = [[BMKPlanNode alloc] init]; CLLocationCoordinate2D cloEnd; cloEnd.latitude = [[self.dictData valueForKey:@"shopLatitude"] doubleValue]; cloEnd.longitude = [[self.dictData valueForKey:@"shopLongitude"] doubleValue]; end.pt = cloEnd; BMKWalkingRoutePlanOption *walkingRoutePlanOption = [[BMKWalkingRoutePlanOption alloc] init]; walkingRoutePlanOption.from = start; walkingRoutePlanOption.to = end; BOOL flg = [self.routeSearch walkingSearch:walkingRoutePlanOption]; if (flg) { FLDDLogDebug(@"success"); } else { FLDDLogInfo(@"failed"); } walkingRoutePlanOption = nil; end = nil; start= nil;}
#pragma mark -BMKRouteSearchDelegate- (void)onGetWalkingRouteResult:(BMKRouteSearch *)searcher result:(BMKWalkingRouteResult *)result errorCode:(BMKSearchErrorCode)error{ if (error == BMK_SEARCH_NO_ERROR) { BMKWalkingRouteLine *walkingLine = (BMKWalkingRouteLine *)[result.routes objectAtIndex:0]; NSString* distance=[NSString stringWithFormat:@"%d",walkingLine.distance]; FLDDLogDebug(@"distance:%d", walkingLine.distance); } }
0 0
- IOS8 Map-持续更新
- ios8以后图标尺寸和iOS8之后的注意事项(持续更新...)
- JAVA集合Map(持续更新)
- ios8上的更新
- 持续更新
- 持续更新
- iOS8 SDK中部份更新
- iOS8 SDK中部份更新
- java中基本的常见类说明(List, ArrayList,Map,Set等持续更新)
- java和js中JSONObject,JSONArray,Map,String之间转换——持续更新中
- iOS8高清壁纸 - 专为iOS8量身定做,每日更新
- Opera_Tips_ 持续更新中
- [持续更新] OO书籍
- 缩写大全--持续更新
- 【持续更新】书籍推荐
- 【持续更新】多媒体文件格式
- 备忘(持续更新...)
- 常用命令-持续更新
- 企业信息安全的管理与防范
- [转帖]浪潮 ERP-PS V10.2 注册机,医药行业版,含营销协同平台
- Magento performance testing guidelines
- @property中retain assign copy详解
- string
- IOS8 Map-持续更新
- android调节soudpool音量播放方式
- inline函数必须在头文件中定义吗?
- [转帖]浪潮 ERP-PS V8.51注册机
- 替代正基AP6330\AP6335的三合一wifi模组
- 关于云大Urp系统的个人分析和一些不成熟的看法
- mysql explain
- redhat 5.5nutch1.9和solr4.9集成
- cocos2dx win32工程如何自定义资源路径,即Resources的路径