gpt4 book ai didi

ios - 谷歌地图 SDK : Draw correct polyline in google map as Device Moves in Background

转载 作者:可可西里 更新时间:2023-11-01 04:00:05 25 4
gpt4 key购买 nike

我正在使用适用于 iOS 的 Google Map SDK。我正在驾驶模式下绘制折线。

但是当我停下来然后缩放谷歌地图时,我的当前位置光标会自动移动并重新绘制之字形多段线,因为之前绘制的所有多段线都会重叠并且多段线会完全改变。当我进入后台并开车时会发生同样的事情.

我能知道为什么会这样吗?以及如何在同一路径上同时在驾驶和步行模式下绘制平滑的多段线。

我的代码-

- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation
{
pointString=[NSString stringWithFormat:@"%f,%f",newLocation.coordinate.latitude,newLocation.coordinate.longitude];
CLLocationDistance kilometers = [newLocation distanceFromLocation:oldLocation] / 1000;
NSLog(@"Distance Travelled in Kilometer :%f",kilometers);

[self.points addObject:pointString];
GMSMutablePath *path = [GMSMutablePath path];
for (int i=0; i<self.points.count; i++)
{
NSArray *latlongArray = [[self.points objectAtIndex:i]componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@","]];

[path addLatitude:[[latlongArray objectAtIndex:0] doubleValue] longitude:[[latlongArray objectAtIndex:1] doubleValue]];
}

if (self.points.count>2)
{
GMSPolyline *polyline = [GMSPolyline polylineWithPath:path];
polyline.strokeColor = [UIColor blueColor];
polyline.strokeWidth = 5.f;
polyline.map = mapView_;
self.mapContainerView = mapView_;
}
}

如果 ,我保持在相同的位置,那么 Googme map Cursor 位置会自动移动并像这样绘制折线。

enter image description here

enter image description here

最佳答案

添加一个 NSLocationAlwaysUsageDescription 和一个 UIBackgroundModes -> "location" 到 Info.plist

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 9) {
manager.allowsBackgroundLocationUpdates = YES;
}

在允许后台位置更新之前: enter image description here

允许后台位置更新后: enter image description here

此行程的大部分内容已在后台绘制。

关于ios - 谷歌地图 SDK : Draw correct polyline in google map as Device Moves in Background,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40150430/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com