BMKLocationManager类。初始化之前请设置 BMKLocationAuth 中的APIKey,否则将无法正常使用服务.
更多...
#import <BMKLocationManager.h>
BMKLocationManager类。初始化之前请设置 BMKLocationAuth 中的APIKey,否则将无法正常使用服务.
◆ authorizationStatus
| - (CLAuthorizationStatus) authorizationStatus |
|
|
|
返回当前定位权限
- 返回
- CLAuthorizationStatus 定位权限枚举类型
◆ BMKLocationCoordinateConvert:SrcType:DesType:
| + (CLLocationCoordinate2D) BMKLocationCoordinateConvert: |
|
(CLLocationCoordinate2D) |
coordinate |
| SrcType: |
|
(BMKLocationCoordinateType) |
srctype |
| DesType: |
|
(BMKLocationCoordinateType) |
destype |
|
|
| |
转换为百度经纬度的坐标
- 参数
-
| coordinate | 待转换的经纬度 |
| srctype | 待转换坐标系类型 |
| destype | 目标百度坐标系类型(bd09ll,bd09mc) |
- 返回
- 目标百度坐标系经纬度
◆ BMKLocationDataAvailableForCoordinate:withCoorType:
| + (BOOL) BMKLocationDataAvailableForCoordinate: |
|
(CLLocationCoordinate2D) |
coordinate |
| withCoorType: |
|
(BMKLocationCoordinateType) |
coortype |
|
|
| |
判断目标经纬度是否在大陆以及港、澳地区。
- 参数
-
| coordinate | 待判断的目标经纬度 |
| coortype | 待判断经纬度的坐标系类型 |
- 返回
- 是否在大陆以及港、澳地区
◆ headingAvailable
| + (BOOL) headingAvailable |
|
|
|
该方法返回设备是否支持设备朝向事件回调。
- 返回
- 是否支持设备朝向事件回调
◆ requestLocationWithReGeocode:withNetworkState:completionBlock:
| - (BOOL) requestLocationWithReGeocode: |
|
(BOOL) |
withReGeocode |
| withNetworkState: |
|
(BOOL) |
withNetWorkState |
| completionBlock: |
|
(BMKLocatingCompletionBlock _Nonnull) |
completionBlock |
|
|
| |
单次定位。如果当前正在连续定位,调用此方法将会失败,返回NO。
该方法将会根据设定的 desiredAccuracy 去获取定位信息。如果获取的定位信息精确度低于 desiredAccuracy ,将会持续的等待定位信息,直到超时后通过completionBlock返回精度最高的定位信息。
可以通过 stopUpdatingLocation 方法去取消正在进行的单次定位请求。
- 参数
-
| withReGeocode | 是否带有逆地理信息(获取逆地理信息需要联网) |
| withNetWorkState | 是否带有移动热点识别状态(需要联网) |
| completionBlock | 单次定位完成后的Block |
- 返回
- 是否成功添加单次定位Request
◆ requestNetworkState
| - (void) requestNetworkState |
|
|
|
◆ requestTemporaryFullAccuracyAuthorizationWithPurposeKey:
| - (void) requestTemporaryFullAccuracyAuthorizationWithPurposeKey: |
|
(ios(14.0)) |
API_AVAILABLE |
|
请求一次全量定位精度等级
- 参数
-
| purposeKey | info.plist中NSLocationTemporaryUsageDescriptionDictionary定义的key |
- 返回
◆ requestTemporaryFullAccuracyAuthorizationWithPurposeKey:completion:
如果你没有全量定位等级精度权限,利用该接口可以临时请求一次全量定位精度等级,系统会抛出弹框让用户确认是否授权app授予相应权限
- 参数
-
| purposeKey | info.plist中NSLocationTemporaryUsageDescriptionDictionary定义的key,对应相应的value可以详细描述申请全量定位精度等级的原因 |
| completion | 回调是否 |
- 返回
◆ startUpdatingHeading
| - (void) startUpdatingHeading |
|
|
|
该方法为BMKLocationManager开始设备朝向事件回调。
◆ startUpdatingLocation
| - (void) startUpdatingLocation |
|
|
|
开始连续定位。调用此方法会cancel掉所有的单次定位请求。
◆ stopIndoorLocation
| - (void) stopIndoorLocation |
|
|
|
该方法为BMKLocationManager会关闭高精度室内定位,只在室内定位版本生效。
◆ stopUpdatingHeading
| - (void) stopUpdatingHeading |
|
|
|
该方法为BMKLocationManager停止设备朝向事件回调。
◆ stopUpdatingLocation
| - (void) stopUpdatingLocation |
|
|
|
停止连续定位。调用此方法会cancel掉所有的单次定位请求,可以用来取消单次定位。
◆ tryIndoorLocation
| - (void) tryIndoorLocation |
|
|
|
该方法为BMKLocationManager尝试使用高精度室内定位。在特定的室内场景下会有更高精度的定位回调,只在室内定位版本生效。
◆ accuracyAuthorization
| - (BMKLAccuracyAuthorization) accuracyAuthorization |
|
readnonatomicassign |
返回定位精度等级,IOS14之后用户可以直接控制返回定位的精度等级,开发者可以通过这个值适配不同定位等级下的产品逻辑
◆ activityType
| - (CLActivityType) activityType |
|
readwritenonatomicassign |
设定定位类型。默认为 CLActivityTypeAutomotiveNavigation。
◆ allowsBackgroundLocationUpdates
| - (BOOL) allowsBackgroundLocationUpdates |
|
readwritenonatomicassign |
是否允许后台定位。默认为NO。只在iOS 9.0及之后起作用。设置为YES的时候必须保证 Background Modes 中的 Location updates 处于选中状态,否则会抛出异常。由于iOS系统限制,需要在定位未开始之前或定位停止之后,修改该属性的值才会有效果。
◆ coordinateType
| - (BMKLocationCoordinateType) coordinateType |
|
readwritenonatomicassign |
设定定位坐标系类型。默认为 BMKLocationCoordinateTypeGCJ02。
◆ delegate
◆ desiredAccuracy
| - (CLLocationAccuracy) desiredAccuracy |
|
readwritenonatomicassign |
设定定位精度。默认为 kCLLocationAccuracyBest。
◆ distanceFilter
| - (CLLocationDistance) distanceFilter |
|
readwritenonatomicassign |
设定定位的最小更新距离。默认为 kCLDistanceFilterNone。
◆ headingFilter
| - (CLLocationDegrees) headingFilter |
|
readwritenonatomicassign |
设定设备朝向最小更新角度。默认为 1。since 2.0.5
◆ isNeedNewVersionReGeocode
| - (BOOL) isNeedNewVersionReGeocode |
|
readwritenonatomicassign |
定位sdk-v1.3之后,开发者可以选择是否需要最新版本rgc数据,1.9之后默认是需要YES;YES的情况下,定位sdk会实时返回最新的rgc数据,如城市变更等数据都会实时更新
◆ locatingWithReGeocode
| - (BOOL) locatingWithReGeocode |
|
readwritenonatomicassign |
◆ locationTimeout
| - (NSInteger) locationTimeout |
|
readwritenonatomicassign |
指定单次定位超时时间,默认为10s。最小值是2s。注意单次定位请求前设置。注意: 单次定位超时时间从确定了定位权限(非kCLAuthorizationStatusNotDetermined状态)后开始计算。
◆ pausesLocationUpdatesAutomatically
| - (BOOL) pausesLocationUpdatesAutomatically |
|
readwritenonatomicassign |
◆ reGeocodeTimeout
| - (NSInteger) reGeocodeTimeout |
|
readwritenonatomicassign |
指定单次定位逆地理超时时间,默认为10s。最小值是2s。注意单次定位请求前设置。
◆ userID
开发者可以指定该用户的id,用于后续统一识别用户,便于查找问题
该类的文档由以下文件生成: