高德地图SDK(导航) V10.0.900
Loading...
Searching...
No Matches
AMapNaviDriveManager.h
Go to the documentation of this file.
1//
2// AMapNaviDriveManager.h
3// AMapNaviKit
4//
5// Created by 刘博 on 16/1/12.
6// Copyright © 2016年 Amap. All rights reserved.
7//
8
11
12NS_ASSUME_NONNULL_BEGIN
13
14@protocol AMapNaviDriveManagerDelegate;
15
16#pragma mark - AMapNaviDriveManager
17
20
21#pragma mark - Singleton
22
28
33+ (BOOL)destroyInstance;
34
38- (instancetype)init __attribute__((unavailable("since 5.4.0 init 已被禁止使用,请使用单例 [AMapNaviDriveManager sharedInstance] 替代,且在调用类的 dealloc 函数里或其他适当时机(如导航ViewController被pop时),调用 [AMapNaviDriveManager destroyInstance] 来销毁单例(需要注意如未销毁成功,请检查单例是否被强引用)")));
39
40#pragma mark - Delegate
41
43@property (nonatomic, weak) id<AMapNaviDriveManagerDelegate> delegate;
44
45#pragma mark - Event Listener
46
51- (void)addEventListener:(id<AMapNaviDriveManagerDelegate>)aListener;
52
57- (void)removeEventListener:(id<AMapNaviDriveManagerDelegate>)aListener;
58
59#pragma mark - Data Representative
60
65- (void)addDataRepresentative:(id<AMapNaviDriveDataRepresentable>)aRepresentative;
66
71- (void)removeDataRepresentative:(id<AMapNaviDriveDataRepresentable>)aRepresentative;
72
73#pragma mark - Navi Route
74
76@property (nonatomic, readonly) NSInteger naviRouteID;
77
79@property (nonatomic, readonly, nullable) AMapNaviRoute *naviRoute;
80
82@property (nonatomic, readonly, nullable) NSArray<NSNumber *> *naviRouteIDs;
83
85@property (nonatomic, readonly, nullable) NSDictionary<NSNumber *, AMapNaviRoute *> *naviRoutes;
86
92- (BOOL)selectNaviRouteWithRouteID:(NSInteger)routeID;
93
98- (void)switchParallelRoad:(AMapNaviParallelRoadInfo *)parallelRoadInfo;
99
104- (void)setMultipleRouteNaviMode:(BOOL)multipleRouteNaviMode;
105
110- (void)setTruckMultipleRouteNaviMode:(BOOL)multipleRouteNaviMode;
111
112#pragma mark - Options
113
115@property (nonatomic, assign) BOOL updateCameraInfo;
116
118@property (nonatomic, assign) BOOL updateTrafficInfo;
119
121@property (nonatomic, assign) AMapNaviDetectedMode detectedMode;
122
124@property (nonatomic, assign, readonly) AMapNaviGPSSignalStrength gpsSignalStrength;
125
127@property (nonatomic, assign) NSUInteger gpsWeakDetecedInterval __attribute__((deprecated("已废弃,since 7.8.0")));
128
130- (void)setIsOpenTrafficLight:(NSString *)key;
131
132#pragma mark - Calculate Route
133
134// 以下算路方法需要高德坐标(GCJ02)
135
143- (BOOL)calculateDriveRouteWithEndPoints:(NSArray<AMapNaviPoint *> *)endPoints
144 wayPoints:(nullable NSArray<AMapNaviPoint *> *)wayPoints
145 drivingStrategy:(AMapNaviDrivingStrategy)strategy;
146
155- (BOOL)calculateDriveRouteWithStartPoints:(NSArray<AMapNaviPoint *> *)startPoints
156 endPoints:(NSArray<AMapNaviPoint *> *)endPoints
157 wayPoints:(nullable NSArray<AMapNaviPoint *> *)wayPoints
158 drivingStrategy:(AMapNaviDrivingStrategy)strategy;
159
168- (BOOL)calculateDriveRouteWithStartPointPOIId:(nullable NSString *)startPOIId
169 endPointPOIId:(nonnull NSString *)endPOIId
170 wayPointsPOIId:(nullable NSArray<NSString *> *)wayPOIIds
171 drivingStrategy:(AMapNaviDrivingStrategy)strategy;
180- (BOOL)calculateDriveRouteWithStartPOIInfo:(nullable AMapNaviPOIInfo *)startPOIInfo
181 endPOIInfo:(nonnull AMapNaviPOIInfo *)endPOIInfo
182 wayPOIInfos:(nullable NSArray<AMapNaviPOIInfo *> *)wayPOIInfos
183 drivingStrategy:(AMapNaviDrivingStrategy)strategy;
184
194- (BOOL)independentCalculateDriveRouteWithStartPOIInfo:(nullable AMapNaviPOIInfo *)startPOIInfo
195 endPOIInfo:(nonnull AMapNaviPOIInfo *)endPOIInfo
196 wayPOIInfos:(nullable NSArray<AMapNaviPOIInfo *> *)wayPOIInfos
197 drivingStrategy:(AMapNaviDrivingStrategy)strategy
198 callback:(nullable void (^)(AMapNaviRouteGroup *_Nullable routeGroup, NSError *_Nullable error))callback;
204- (BOOL)recalculateDriveRouteWithDrivingStrategy:(AMapNaviDrivingStrategy)strategy;
205
206#pragma mark - Manual
207
213- (void)setVehicleProvince:(NSString *)province number:(NSString *)number __attribute__((deprecated("已废弃,请使用 setVehicleInfo: 替代,since 6.0.0")));
214
220- (BOOL)setVehicleInfo:(nullable AMapNaviVehicleInfo *)vehicleInfo;
221
227- (BOOL)setBroadcastMode:(AMapNaviBroadcastMode)mode;
228
234- (BOOL)setOnlineCarHailingType:(AMapNaviOnlineCarHailingType)type;
235
236#pragma mark - Traffic Status
237
244- (nullable NSArray<AMapNaviTrafficStatus *> *)getTrafficStatusesWithStartPosition:(int)startPosition distance:(int)distance;
245
250- (nullable NSArray<AMapNaviTrafficStatus *> *)getTrafficStatuses;
251
252#pragma mark - Xcode Simulate Location
253
258- (void)setXcodeSimulateLocationEnable:(BOOL)enableNavi __attribute__((deprecated("已废弃,since 7.5.0")));
259
260#pragma mark - 服务区详情信息
265- (void)setServiceAreaDetailsEnable:(BOOL)enable;
266
267#pragma mark - push路线相关
268
277- (BOOL)pushDriveRouteWithRouteGuideData:(nonnull NSData *)routeData
278 startPOIInfo:(nonnull AMapNaviPOIInfo *)startPOIInfo
279 endPOIInfo:(nonnull AMapNaviPOIInfo *)endPOIInfo
280 wayPOIInfos:(nullable NSArray<AMapNaviPOIInfo *> *)wayPOIInfos
281 drivingStrategy:(AMapNaviDrivingStrategy)strategy;
282
283// 5.1 算路协议升级后的路线还原接口 routeguide 协议版本号 since 9.0.0
288- (NSString *_Nullable)getPushDataNaviVersion;
289
294- (NSString *_Nullable)routeSDKVersion;
295
300- (NSString *_Nullable)routeServerVersion;
301@end
302
303#pragma mark - Escort
304
305@interface AMapNaviDriveManager (Escort)
306
312- (BOOL)setEscortMissonID:(NSNumber *)missonID;
313
314@end
315
316#pragma mark - Private
317
318@interface AMapNaviDriveManager (Private)
322+ (BOOL)setCustomCloudControlEnable:(BOOL)enable;
326- (BOOL)setExtenalCloudControl:(nullable NSString *)cloudControlString;
327
371- (BOOL)getRestrictareaInfoInRoute:(AMapNaviRoute *)route callback:(nonnull void (^)(BOOL responseSuccess, NSString *responseData, NSString *errorDesc))callback;
372
373@end
374
375#pragma mark - AMapNaviDriveManagerDelegate
376@protocol AMapNaviDriveManagerDelegate <NSObject>
377@optional
383- (void)driveManager:(AMapNaviDriveManager *)driveManager error:(NSError *)error;
384
389- (void)driveManagerOnCalculateRouteSuccess:(AMapNaviDriveManager *)driveManager;
390
396- (void)driveManager:(AMapNaviDriveManager *)driveManager onCalculateRouteSuccessWithType:(AMapNaviRoutePlanType)type;
397
403- (void)driveManager:(AMapNaviDriveManager *)driveManager onCalculateRouteFailure:(NSError *)error;
404
411- (void)driveManager:(AMapNaviDriveManager *)driveManager onCalculateRouteFailure:(NSError *)error routePlanType:(AMapNaviRoutePlanType)type;
412
418- (void)driveManager:(AMapNaviDriveManager *)driveManager didStartNavi:(AMapNaviMode)naviMode;
419
424- (void)driveManagerNeedRecalculateRouteForYaw:(AMapNaviDriveManager *)driveManager;
425
430- (void)driveManagerNeedRecalculateRouteForTrafficJam:(AMapNaviDriveManager *)driveManager;
431
437- (void)driveManager:(AMapNaviDriveManager *)driveManager onArrivedWayPoint:(int)wayPointIndex;
438
444- (BOOL)driveManagerIsNaviSoundPlaying:(AMapNaviDriveManager *)driveManager;
445
452- (void)driveManager:(AMapNaviDriveManager *)driveManager playNaviSoundString:(NSString *)soundString soundStringType:(AMapNaviSoundType)soundStringType;
453
458- (void)driveManagerDidEndEmulatorNavi:(AMapNaviDriveManager *)driveManager;
459
464- (void)driveManagerOnArrivedDestination:(AMapNaviDriveManager *)driveManager;
465
471- (void)driveManager:(AMapNaviDriveManager *)driveManager onNaviPlayRing:(AMapNaviRingType)ringType;
472
478- (void)driveManager:(AMapNaviDriveManager *)driveManager updateGPSSignalStrength:(AMapNaviGPSSignalStrength)gpsSignalStrength;
479
485- (void)driveManager:(AMapNaviDriveManager *)driveManager postRouteNotification:(AMapNaviRouteNotifyData *)notifyData;
486
492- (void)driveManager:(AMapNaviDriveManager *)driveManager onSuggestChangeMainNaviRoute:(AMapNaviSuggestChangeMainNaviRouteInfo *)suggestChangeMainNaviRouteInfo;
493
499- (void)driveManager:(AMapNaviDriveManager *_Nullable)manager onUpdateDriveComfort:(AMapNaviDriveComfort *_Nonnull)driveComfort;
500
506- (void)driveManager:(AMapNaviDriveManager *_Nullable)manager onUpdateDriveEvent:(AMapNaviDriveEvent *_Nonnull)driveEvent;
507
513- (void)driveManager:(AMapNaviDriveManager *_Nullable)manager onUpdateNaviSpeedLimitSection:(NSInteger)speed;
514@end
515
516NS_ASSUME_NONNULL_END
AMapNaviBroadcastMode
Definition AMapNaviCommonObj.h:250
AMapNaviGPSSignalStrength
Definition AMapNaviCommonObj.h:312
AMapNaviOnlineCarHailingType
Definition AMapNaviCommonObj.h:415
AMapNaviRoutePlanType
Definition AMapNaviCommonObj.h:328
AMapNaviMode
Definition AMapNaviCommonObj.h:25
AMapNaviDrivingStrategy
Definition AMapNaviCommonObj.h:55
AMapNaviDetectedMode
Definition AMapNaviCommonObj.h:184
AMapNaviRingType
Definition AMapNaviCommonObj.h:301
AMapNaviSoundType
Definition AMapNaviCommonObj.h:174
注意:该类为导航控制器基类,请不要直接使用
Definition AMapNaviBaseManager.h:22
道路舒适度信息 since 9.3.5
Definition AMapNaviCommonObj.h:1151
驾驶三急(急加速/急减速/急转弯)事件信息 since 9.3.5
Definition AMapNaviCommonObj.h:1179
驾车导航管理类
Definition AMapNaviDriveManager.h:20
BOOL updateCameraInfo
导航中是否播报摄像头信息,默认YES.
Definition AMapNaviDriveManager.h:115
NSString *_Nullable routeServerVersion()
获得 routeServer 版本号。
BOOL destroyInstance()
销毁AMapNaviDriveManager单例. AMapNaviDriveManager内存开销比较大,建议不使用时可销毁. since 5.4.0
NSInteger naviRouteID
当前导航路径的ID
Definition AMapNaviDriveManager.h:76
NSUInteger gpsWeakDetecedInterval
默认为10, 范围为[ 5, 15 ], 单位秒. 表示有连续的10s, 定位信号质量都比较差, 就会触发手机卫星定位信号弱的回调. 值越小, 就越容易触发. since 6....
Definition AMapNaviDriveManager.h:127
AMapNaviDriveManager * sharedInstance()
AMapNaviDriveManager单例. since 5.4.0.
instancetype init()
请使用单例替代. since 5.4.0 init已被禁止使用,请使用单例 [AMapNaviDriveManager sharedInstance] 替代,且在调用类的 dealloc 函数或其他适当...
NSDictionary< NSNumber *, AMapNaviRoute * > * naviRoutes
多路径规划时的所有路径信息,参考 AMapNaviRoute 类.
Definition AMapNaviDriveManager.h:85
NSString *_Nullable routeSDKVersion()
获得 routeService 版本号。
AMapNaviRoute * naviRoute
当前导航路径的信息,参考 AMapNaviRoute 类.
Definition AMapNaviDriveManager.h:79
BOOL updateTrafficInfo
导航中是否播报交通信息,默认YES(需要联网).
Definition AMapNaviDriveManager.h:118
id< AMapNaviDriveManagerDelegate > delegate
实现了 AMapNaviDriveManagerDelegate 协议的类指针
Definition AMapNaviDriveManager.h:43
AMapNaviDetectedMode detectedMode
巡航模式,默认为 AMapNaviDetectedModeNone. 注意:1. 如果已经处在导航模式,要开启巡航模式时,需要先调用 stopNavi 来停止导航,再设置 detectedMode 才能...
Definition AMapNaviDriveManager.h:121
NSString *_Nullable getPushDataNaviVersion()
获取导航路线还原版本号。since 9.0.0
NSArray< NSNumber * > * naviRouteIDs
多路径规划时的所有路径ID,路径ID为 NSInteger 类型.
Definition AMapNaviDriveManager.h:82
AMapNaviGPSSignalStrength gpsSignalStrength
卫星定位信号强度类型, 参考 AMapNaviGPSSignalStrength since 7.8.0 只在导航中获取卫星定位信号强弱的值才有效
Definition AMapNaviDriveManager.h:124
nullable NSArray< AMapNaviTrafficStatus * > * getTrafficStatuses()
获取当前道路的路况光柱信息
高德POI信息 since 6.4.0
Definition AMapNaviCommonObj.h:1069
平行路切换信息 since 6.6.0
Definition AMapNaviCommonObj.h:1086
Definition AMapNaviCommonObj.h:495
导航路径信息集合. since 7.7.0
Definition AMapNaviRoute.h:237
导航路径信息
Definition AMapNaviRoute.h:145
实时导航过程中关于路线的‘通知信息’ since 6.2.0
Definition AMapNaviCommonObj.h:965
多路线导航模式下,建议将某备选路线切换为主导航路线 since 6.3.0
Definition AMapNaviCommonObj.h:1024
前方交通路况信息类
Definition AMapNaviCommonObj.h:590
车辆信息 since 6.0.0
Definition AMapNaviCommonObj.h:855
© 2017 高德信息技术有限公司 版权所有,保留所有权利。