提交 7ff4515e authored 作者: 袁静春's avatar 袁静春

提交:iOS提供开启导航的入口函数;

上级 b1e76c7b
//
// ClxConstant.h
// Pods
//
// Created by yjc on 2023/2/14.
//
#ifndef ClxConstant_h
#define ClxConstant_h
static const NSString sCLXMethodNameMapUpdate = "navigation#startNav";
#endif /* ClxConstant_h */
...@@ -153,6 +153,15 @@ ...@@ -153,6 +153,15 @@
#pragma mark - #pragma mark -
#pragma mark - drive 独立路径规划和导航 #pragma mark - drive 独立路径规划和导航
//开始导航
- (void)startNav {
// 判断是否进行路径规划
if (self.startPoint && self.endPoint) {
NSLog(@"---driveRoutePlan : self.startPoint=%@, self.endPoint=%@", self.startPoint, self.endPoint);
[self driveRoutePlan];
}
}
- (void)driveRoutePlan { - (void)driveRoutePlan {
AMapNaviPOIInfo *startPOIInfo = [[AMapNaviPOIInfo alloc] init]; AMapNaviPOIInfo *startPOIInfo = [[AMapNaviPOIInfo alloc] init];
// 1.只传经纬度 // 1.只传经纬度
...@@ -289,12 +298,39 @@ ...@@ -289,12 +298,39 @@
#pragma mark - #pragma mark -
#pragma mark - Flutter and Navite Method CallHandler #pragma mark - Flutter and Navite Method CallHandler
// kChannelName 通道
- (void)setMethodCallHandler { - (void)setMethodCallHandler {
__weak __typeof__(self) weakSelf = self; __weak __typeof__(self) weakSelf = self;
// [self.channel addMethodName:sCLXMethodNameMapUpdate withHandler:^(FlutterMethodCall * _Nonnull call, FlutterResult _Nonnull result) { [_channel setMethodCallHandler:^(FlutterMethodCall * _Nonnull call, FlutterResult _Nonnull result) {
// [weakSelf.mapView updateMapViewOption:call.arguments[@"options"] withRegistrar:weakSelf.registrar]; NSLog(@"---setMethodCallHandler---: method=%@, params=%@", call.method, call.arguments);
// result(nil); //开始导航
// }]; if ([call.method isEqualToString:@"navigation#startNav"]) {
weakSelf.startPoint = nil;
NSDictionary *startPoint = [call.arguments objectForKey:@"startPoint"];
if (startPoint && [startPoint isKindOfClass:[NSDictionary class]]) {
if ([startPoint.allKeys containsObject:@"latitude"] && [startPoint.allKeys containsObject:@"longitude"]) {
NSString *startPointLat = startPoint[@"latitude"];
NSString *startPointLon = startPoint[@"longitude"];
NSLog(@"---开始导航 startPointLat: %@, startPointLon=%@", startPointLat, startPointLon);
weakSelf.startPoint = [AMapNaviPoint locationWithLatitude:[startPointLat floatValue] longitude:[startPointLon floatValue]];
NSLog(@"---开始导航 weakSelf.startPoint: %@", weakSelf.startPoint);
}
}
weakSelf.endPoint = nil;
NSDictionary *endPoint = [call.arguments objectForKey:@"endPoint"];
if (endPoint && [endPoint isKindOfClass:[NSDictionary class]]) {
if ([endPoint.allKeys containsObject:@"latitude"] && [endPoint.allKeys containsObject:@"longitude"]) {
NSString *endPointLat = endPoint[@"latitude"];
NSString *endPointLon = endPoint[@"longitude"];
NSLog(@"---开始导航 endPointLat: %@, endPointLon=%@", endPointLat, endPointLon);
weakSelf.endPoint = [AMapNaviPoint locationWithLatitude:[endPointLat floatValue] longitude:[endPointLon floatValue]];
NSLog(@"---开始导航 weakSelf.endPoint: %@", weakSelf.endPoint);
}
}
//开始导航
[weakSelf startNav];
}
}];
} }
@end @end
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论