0
我有兩個位置,一個是驅動程序,另一個是騎手。我有兩個長的可用於兩者。我想在駕駛員進入地理圍欄區域時碰到api的車手位置。如何實現蘋果地圖的地理圍欄代碼ios 9
我經歷了QKGeofenceManager演示項目: 使用這個我可以提供經緯度和半徑來尋找地理圍欄。
但問題是我必須在後臺每次更新驅動程序位置以及應該應用什麼條件,以便在駕駛員進入騎手的地理圍欄區域時進行回調。如果ap在後臺,它將如何處理一切。 我一定要做出的appdelegate
- (NSArray *)geofencesForGeofenceManager:(QKGeofenceManager *)geofenceManager
{
NSArray *fetchedObjects = [self.fetchedResultsController fetchedObjects];
NSMutableArray *geofences = [NSMutableArray arrayWithCapacity:[fetchedObjects count]];
for (NSManagedObject *object in fetchedObjects) {
NSString *identifier = [object valueForKey:@"identifier"];
CLLocationDegrees lat = [[object valueForKey:@"lat"] doubleValue];
CLLocationDegrees lon = [[object valueForKey:@"lon"] doubleValue];
CLLocationDistance radius = [[object valueForKey:@"radius"] doubleValue];
CLLocationCoordinate2D center = CLLocationCoordinate2DMake(lat, lon);
CLCircularRegion *geofence = [[CLCircularRegion alloc] initWithCenter:center radius:radius identifier:identifier];
[geofences addObject:geofence];
}
return geofences;
}
如果您已經設置了要監視的geofence區域,那麼即使您的應用程序位於後臺 – Paulw11
@ Paulw11中,您仍然需要調用您的'didEnterRegion'委託回調函數,您必須在其中調用這些方法:Appdelegate或者在我有地點的班級 –