이동성 유형 (자동차, 트램 웨이, 버스, 기차, 지하철 ...)을 구별해야하는 프로젝트를 진행하고 있습니다. 현재 속도 시스템을 사용하여 대부분을 구별하기 위해 분과 최대 각각의 유형 (당신은 말하지 않을 것입니다 :)) 그러나 여기서 내가 차를 구별하고자 할 때 & 지하철 - 그들은 둘 다 동일한 속도 (다소간)가 있지만 구별하는 유일한 것 현재 RAILWAYS와 ROUTE (?)가있는 곳입니다.현재 위치 경로 유형을 확인하십시오
아이디어 :
당신은 어떻게 생각하세요 ... OpenStreetMap에를 사용하여 여행의 90 %가 철도 여부에 있었다면 확인? 내가 생각하지도 않은 다른 아이디어가 있습니까? 결코 OpenStreetMap을 사용하지 마십시오. 셀룰러 데이터를 사용하는 데 방해가됩니다 ...
도움을 주셔서 감사합니다!
편집은 (내가 가진의 답변에 감사 - 감사합니다!) : 여기 는 당신이 더 정확 알려 :)
[_motionActivityManager startActivityUpdatesToQueue:[[NSOperationQueue alloc] init] withHandler:^(CMMotionActivity *activity) {
dispatch_async(dispatch_get_main_queue(), ^{
if ([activity stationary] && !isStationnary)
{
isStationnary = TRUE;
MKLocalSearchRequest *request = [[MKLocalSearchRequest alloc] init];
request.naturalLanguageQuery = @"Train station";
request.region = MKCoordinateRegionMakeWithDistance(UIApplication sharedApplication.tracker.lastKnownLocation.coordinate, 500, 500);
MKLocalSearch *search = [[MKLocalSearch alloc] initWithRequest:request];
[search startWithCompletionHandler:^(MKLocalSearchResponse *response, NSError *error) {
for (MKMapItem *item in response.mapItems) {
CLCircularRegion *region = [[CLCircularRegion alloc] initWithCenter:item.placemark.coordinate radius:50
identifier:@"train station region"];
if ([region containsCoordinate: UIApplication sharedApplication.tracker.lastKnownLocation.coordinate]) {
NSLog(@"IN REGION! %@", item);
}
else {
NSLog(@"NOT IN REGION! %@", item);
}
}
}];
}
else if ([activity walking])
{
isStationnary = FALSE;
}
});
}];