Need help with APTimeZones?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

433 Stars 46 Forks MIT License 48 Commits 10 Opened issues


The easiest offline way to get NSTimeZone from CLLocation by folks from

Services available


Need anything else?

Contributors list

An utility for iOS and OSX developers to simplify extracting NSTimeZone from a given CLLocation.

You can do the same job by calling Google API or Yahoo API but APTimeZones works locally, offline and with no limits inherented to hosted solutions.


//Ukraine location
CLLocation *location = [[CLLocation alloc] initWithLatitude:50.449846

NSTimeZone *timeZone = [[APTimeZones sharedInstance] timeZoneWithLocation:location]; NSLog(@"%@", timeZone);

You can use APTimeZones with CLGeocoder as well to receive NSTimeZone for a given city string.

CLGeocoder *geocoder = [[CLGeocoder alloc] init];
[geocoder geocodeAddressString:@"New York" completionHandler:^(NSArray *placemarks, NSError *error) {
    if (placemarks.count) {
        CLPlacemark *placemark = placemarks[0];
        CLLocation *location = placemark.location;

    NSString *countryCode = placemark.addressDictionary[@"CountryCode"];
    NSTimeZone *timeZone = [[APTimeZones sharedInstance] timeZoneWithLocation:location
    NSLog(@"%@", timeZone);


Version 1.1:

We've added some handy categories with version 1.1 to make timezones magic even more easy.

CLLocation+APTimeZones CLPlacemark+APTimeZones

    CLLocation *location = ...
    NSLog(@"%@", location.timeZone);

CLPlacemark *placemark = ...;
NSLog(@"%@", placemark.timeZone);

Also, we've added example project that shows APTimeZones usage [Demo Video on YouTube]:

APTimeZones requires ARC.


Check out all Alterplay's GitHub projects. Email us with other ideas and projects.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.