J'essaie d'enregistrer des données dans la base de données Ream alors que les utilisateurs ont verrouillé leur iPhone. Ces données peuvent être les coordonnées de localisation produites par les mises à jour d'emplacement d'arrière-plan. Si le royaume ne peut pas le faire. Les données de base pourraient-elles le faire?Will Realm pourra-t-il toujours enregistrer les données alors que l'utilisateur a verrouillé l'iPhone?
Voilà comment je le fais dans le code:
- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray<CLLocation *> *)locations {
NSLog(@"didUpdateLocations: %@", locations);
if (locations.count > 0) {
CLLocation *location = locations.firstObject;
if (location.horizontalAccuracy < 0) {
return;
}
JBLocation *locationObject = [[JBLocation alloc] init];
locationObject.lat = location.coordinate.latitude;
locationObject.lon = location.coordinate.longitude;
locationObject.date = [NSDate new];
locationObject.speed = location.speed;
RLMRealm *realm = [RLMRealm defaultRealm];
[realm beginWriteTransaction];
[realm addObject:locationObject];
[realm commitWriteTransaction];
}
}