Comment get le timezone par latitude et longitude

J'ai besoin d'afficher la date et l'heure en fonction du lat / long donné dans l'application. J'ai travaillé avec Google API pour get l'identifiant du timezone, mais il devrait aussi fonctionner hors ligne. Est-il possible d'get un timezone sans être connecté à Internet?

Essaye celui-là :

CLLocation *location = [[CLLocation alloc] initWithLatitude:50.449846 longitude:30.523629]; NSTimeZone *timeZone = [[APTimeZones sharedInstance] timeZoneWithLocation:location]; NSLog(@"%@", timeZone); 

Trouvez la bibliothèque ici: https://github.com/Alterplay/APTimeZones


Vous pouvez également le faire par code (répondu par https://stackoverflow.com/a/27054583/3202193 ):

 CLLocation *currentLocaiton = [[CLLocation alloc] initWithLatitude:latitude longitude:longitude]; [geoCoder reverseGeocodeLocation:currentLocaiton completionHandler:^(NSArray *placemarks, NSError *error) { if (error == nil && [placemarks count] > 0) { placeMark = [placemarks lastObject]; NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:@"identifier = \"[az]*\\/[az]*_*[az]*\"" options:NSRegularExpressionCaseInsensitive error:NULL]; NSTextCheckingResult *newSearchSsortingng = [regex firstMatchInSsortingng:[placeMark description] options:0 range:NSMakeRange(0, [placeMark.description length])]; NSSsortingng *substr = [placeMark.description subssortingngWithRange:newSearchSsortingng.range]; NSLog(@"timezone id %@",substr); }