Skip to content

sherwinzadeh/TimeZoneLocate

 
 

Repository files navigation

TimeZoneLocate

CI Status Version License Platform

This utility is the Swift port of the APTimeZones library with the support for bundled frameworks. If your project is Objective-C, we recommend using theirs.

  • For Swift 5 version, use version ~> 0.5.0.
  • For Swift 4 version, use version ~> 0.4.0.
  • For Swift 3 version, use version ~> 0.3.0.
  • For Swift 2 version, use version ~> 0.1.0.

Usage:

    //San Diego, CA, USA
    let location = CLLocation(latitude: 32.88, longitude: -117.15)

    //TimeZone from extension (fast, synchronous, approximate)
    var timeZone = location.timeZone
    print(timeZone)

    //or calling the class method
    timeZone = TimeZoneLocate.timeZone(location: location)
    print(timeZone)

    //if you have the country code, you can speed things up.
    timeZone = TimeZoneLocate.timeZone(location: location, countryCode: "US")

    // A MORE accurate time zone if you are connected to network. (iOS 9.0 or later)
    location.timeZone { (tz) -> (Void) in
      guard let tz = tz else { return }
      // got a more accureate timezone from the network
      print("Network TimeZone: \(tz.identifier)")
    }

    // Same thing
    TimeZoneLocate.geocodeTimeZone(location: location) { (tz) -> (Void) in
      guard let tz = tz else { return }
      print("Network TimeZone: \(tz.identifier) (class method)")
    }

Installation

To install it, simply add the following line to your Podfile:

pod "TimeZoneLocate"

Authors

License

TimeZoneLocate is available under the MIT license. See the LICENSE file for more info.

About

Time zone for locations offline in Swift (iOS).

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Swift 85.1%
  • Ruby 14.9%