高德地图SDK(定位)  V2.10.0
AMapLocationManager.h
Go to the documentation of this file.
1 //
2 // AMapLocationManager.h
3 // AMapLocationKit
4 //
5 // Created by AutoNavi on 15/10/22.
6 // Copyright © 2015年 Amap. All rights reserved.
7 //
8 
9 #import <UIKit/UIKit.h>
10 #import <AMapFoundationKit/AMapServices.h>
13 
20 typedef void (^AMapLocatingCompletionBlock)(CLLocation *location, AMapLocationReGeocode *regeocode, NSError *error);
21 
23 
24 #pragma mark - AMapLocationManager
25 
27 @interface AMapLocationManager : NSObject
28 
30 @property (nonatomic, weak) id<AMapLocationManagerDelegate> delegate;
31 
33 @property(nonatomic, assign) CLLocationDistance distanceFilter;
34 
38 @property(nonatomic, assign) CLLocationAccuracy desiredAccuracy;
39 
41 @property(nonatomic, assign) BOOL pausesLocationUpdatesAutomatically;
42 
44 @property(nonatomic, assign) BOOL allowsBackgroundLocationUpdates;
45 
47 @property(nonatomic, assign) NSInteger locationTimeout;
48 
50 @property(nonatomic, assign) NSInteger reGeocodeTimeout;
51 
53 @property (nonatomic, assign) BOOL locatingWithReGeocode;
54 
56 @property (nonatomic, assign) AMapLocationReGeocodeLanguage reGeocodeLanguage;
57 
59 @property (nonatomic, readonly, copy) NSSet *monitoredRegions;
60 
62 @property (nonatomic, assign) BOOL detectRiskOfFakeLocation;
63 
64 
65 #if __IPHONE_OS_VERSION_MAX_ALLOWED >= 140000
66 
79 @property (nonatomic, assign) AMapLocationAccuracyMode locationAccuracyMode API_AVAILABLE(ios(14.0));
80 
85 @property (nonatomic, readonly) CLAccuracyAuthorization currentAuthorization API_AVAILABLE(ios(14.0));
86 
87 #endif
88 
93 + (BOOL)headingAvailable;
94 
98 - (void)startUpdatingHeading;
99 
103 - (void)stopUpdatingHeading;
104 
109 
116 - (BOOL)requestLocationWithReGeocode:(BOOL)withReGeocode completionBlock:(AMapLocatingCompletionBlock)completionBlock;
117 
121 - (void)startUpdatingLocation;
122 
126 - (void)stopUpdatingLocation;
127 
132 - (void)startMonitoringForRegion:(AMapLocationRegion *)region __attribute__((deprecated("请使用AMapGeoFenceManager")));
133 
138 - (void)stopMonitoringForRegion:(AMapLocationRegion *)region __attribute__((deprecated("请使用AMapGeoFenceManager")));
139 
144 - (void)requestStateForRegion:(AMapLocationRegion *)region __attribute__((deprecated("请使用AMapGeoFenceManager")));
145 
146 #pragma mark - Privacy 隐私合规
147 
152 + (void)updatePrivacyShow:(AMapPrivacyShowStatus)showStatus privacyInfo:(AMapPrivacyInfoStatus)containStatus;
157 + (void)updatePrivacyAgree:(AMapPrivacyAgreeStatus)agreeStatus;
158 
159 @end
160 
161 #pragma mark - AMapLocationManagerDelegate
162 
164 @protocol AMapLocationManagerDelegate <NSObject>
165 
166 @optional
167 
168 #if __IPHONE_OS_VERSION_MAX_ALLOWED >= 140000
169 
182 - (void)amapLocationManager:(AMapLocationManager *)manager doRequireTemporaryFullAccuracyAuth:(CLLocationManager*)locationManager completion:(void(^)(NSError *error))completion;
183 
184 #endif
185 
193 - (void)amapLocationManager:(AMapLocationManager *)manager doRequireLocationAuth:(CLLocationManager*)locationManager;
194 
200 - (void)amapLocationManager:(AMapLocationManager *)manager didFailWithError:(NSError *)error;
201 
207 - (void)amapLocationManager:(AMapLocationManager *)manager didUpdateLocation:(CLLocation *)location;
208 
215 - (void)amapLocationManager:(AMapLocationManager *)manager didUpdateLocation:(CLLocation *)location reGeocode:(AMapLocationReGeocode *)reGeocode;
216 
222 - (void)amapLocationManager:(AMapLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)status;
223 
229 - (void)amapLocationManager:(AMapLocationManager *)manager locationManagerDidChangeAuthorization:(CLLocationManager*)locationManager;
230 
236 - (BOOL)amapLocationManagerShouldDisplayHeadingCalibration:(AMapLocationManager *)manager;
237 
243 - (void)amapLocationManager:(AMapLocationManager *)manager didUpdateHeading:(CLHeading *)newHeading;
244 
250 - (void)amapLocationManager:(AMapLocationManager *)manager didStartMonitoringForRegion:(AMapLocationRegion *)region __attribute__((deprecated("请使用AMapGeoFenceManager")));
251 
257 - (void)amapLocationManager:(AMapLocationManager *)manager didEnterRegion:(AMapLocationRegion *)region __attribute__((deprecated("请使用AMapGeoFenceManager")));
258 
264 - (void)amapLocationManager:(AMapLocationManager *)manager didExitRegion:(AMapLocationRegion *)region __attribute__((deprecated("请使用AMapGeoFenceManager")));
265 
272 - (void)amapLocationManager:(AMapLocationManager *)manager didDetermineState:(AMapLocationRegionState)state forRegion:(AMapLocationRegion *)region __attribute__((deprecated("请使用AMapGeoFenceManager")));
273 
280 - (void)amapLocationManager:(AMapLocationManager *)manager monitoringDidFailForRegion:(AMapLocationRegion *)region withError:(NSError *)error __attribute__((deprecated("请使用AMapGeoFenceManager")));
281 
282 @end
-[AMapLocationManager locationAccuracyMode]
AMapLocationAccuracyMode locationAccuracyMode(ios(14.0))
设置定位数据回调精度模式,默认为AMapLocationAccuracyFullAndReduce。 注意:如果定位时未获得定位权限,则首先会调用申请定位权限API,实际定位精度权限取决于用户的权限设置...
AMapLocationManager::reGeocodeTimeout
NSInteger reGeocodeTimeout
指定单次定位逆地理超时时间,默认为5s。最小值是2s。注意单次定位请求前设置。
Definition: AMapLocationManager.h:50
AMapLocationCommonObj.h
AMapLocationManager::locatingWithReGeocode
BOOL locatingWithReGeocode
连续定位是否返回逆地理信息,默认NO。
Definition: AMapLocationManager.h:53
AMapLocationManager::distanceFilter
CLLocationDistance distanceFilter
设定定位的最小更新距离。单位米,默认为 kCLDistanceFilterNone,表示只要检测到设备位置发生变化就会更新位置信息。
Definition: AMapLocationManager.h:33
AMapLocationManager::detectRiskOfFakeLocation
BOOL detectRiskOfFakeLocation
检测是否存在虚拟定位风险,默认为NO,不检测。 注意:设置为YES时,单次定位通过 AMapLocatingCompletionBlock 的error给出虚拟定位风险提示;连续定位通过 amapLo...
Definition: AMapLocationManager.h:62
AMapLocationManager::pausesLocationUpdatesAutomatically
BOOL pausesLocationUpdatesAutomatically
指定定位是否会被系统自动暂停。默认为NO。
Definition: AMapLocationManager.h:41
AMapLocationManager::delegate
id< AMapLocationManagerDelegate > delegate
实现了 AMapLocationManagerDelegate 协议的类指针。
Definition: AMapLocationManager.h:30
-[AMapLocationManager startUpdatingHeading]
void startUpdatingHeading()
开始获取设备朝向,如果设备支持方向识别,则会通过代理回调方法
-[AMapLocationManager currentAuthorization]
CLAccuracyAuthorization currentAuthorization(ios(14.0))
获取当前定位精度权限。
AMapLocatingCompletionBlock
void(^ AMapLocatingCompletionBlock)(CLLocation *location, AMapLocationReGeocode *regeocode, NSError *error)
AMapLocatingCompletionBlock 单次定位返回Block.
Definition: AMapLocationManager.h:20
AMapLocationManager::locationTimeout
NSInteger locationTimeout
指定单次定位超时时间,默认为10s。最小值是2s。注意单次定位请求前设置。注意: 单次定位超时时间从确定了定位权限(非kCLAuthorizationStatusNotDetermined状态)后开始计...
Definition: AMapLocationManager.h:47
-[AMapLocationManager dismissHeadingCalibrationDisplay]
void dismissHeadingCalibrationDisplay()
停止设备朝向校准显示
-[AMapLocationManager stopUpdatingLocation]
void stopUpdatingLocation()
停止连续定位。调用此方法会cancel掉所有的单次定位请求,可以用来取消单次定位。
AMapLocationManagerDelegate-p
AMapLocationManagerDelegate 协议定义了发生错误时的错误回调方法,连续定位的回调方法等。
Definition: AMapLocationManager.h:164
AMapLocationReGeocode
逆地理信息
Definition: AMapLocationCommonObj.h:58
AMapLocationManager::desiredAccuracy
CLLocationAccuracy desiredAccuracy
Definition: AMapLocationManager.h:38
-[AMapLocationManager startUpdatingLocation]
void startUpdatingLocation()
开始连续定位。调用此方法会cancel掉所有的单次定位请求。
AMapLocationManager::reGeocodeLanguage
AMapLocationReGeocodeLanguage reGeocodeLanguage
逆地址语言类型,默认是AMapLocationRegionLanguageDefault
Definition: AMapLocationManager.h:56
AMapLocationManager::monitoredRegions
NSSet * monitoredRegions
获取被监控的region集合。
Definition: AMapLocationManager.h:59
AMapLocationRegionObj.h
AMapLocationRegion
AMapLocationRegion类,该类提供范围类的基本信息,并无具体实现,不要直接使用。
Definition: AMapLocationRegionObj.h:17
-[AMapLocationManager stopUpdatingHeading]
void stopUpdatingHeading()
停止获取设备朝向
AMapLocationManager::allowsBackgroundLocationUpdates
BOOL allowsBackgroundLocationUpdates
是否允许后台定位。默认为NO。只在iOS 9.0及之后起作用。设置为YES的时候必须保证 Background Modes 中的 Location updates 处于选中状态,否则会抛出异常。由于iO...
Definition: AMapLocationManager.h:44
+[AMapLocationManager headingAvailable]
BOOL headingAvailable()
设备是否支持方向识别
AMapLocationManager
AMapLocationManager类。初始化之前请设置 AMapServices 中的apikey(例如:[AMapServices sharedServices]....
Definition: AMapLocationManager.h:28
© 2017 高德信息技术有限公司 版权所有,保留所有权利。