Automatic time zone detection in devices

US10503124B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10503124-B2
Application numberUS-201514937637-A
CountryUS
Kind codeB2
Filing dateNov 10, 2015
Priority dateOct 31, 2015
Publication dateDec 10, 2019
Grant dateDec 10, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods, systems, apparatuses, and computer program products are provided for enabling devices to determine the time zone in which they are located. A mobile device may receive location information from one or more sources. Based thereon, the current location of the mobile device may be determined in terms of latitude and longitude. The indication of the current location may be converted to an index value according to a Hilbert curve (or other space-filling curve), and the index value applied to a time zone index file to determine the local time zone. A time zone setting of the mobile device may be updated accordingly. Furthermore, “geofencing” may be used by the mobile device to detect movement towards and through a time zone boundary, leading to a new time zone determination being initiated.

First claim

Opening claim text (preview).

What is claimed is: 1. A method in a computer, comprising: receiving map data defining a world map as an array of polygons with associated time zones; determining a time zone identifier array based on the map data that includes a time zone identifier for each time zone identified in the map data; for each time zone, analyzing each polygon of the array of polygons included in the time zone to generate a set of cells associated with the time zone, thereby generating a plurality of sets of cells associated with the time zones; eliminating duplicate cell entries in the plurality of sets of cells associated with the time zones; and generating a time zone index file that includes the plurality of sets of cells with corresponding time zone identifiers. 2. The method of claim 1 , wherein said determining a time zone identifier array comprises: determining the time zone identifier array to include time zone identifiers according to a first time zone data type; and mapping the time zone identifiers from a first time zone data type to a second time zone data type. 3. The method of claim 1 , wherein, for each time zone, said analyzing each polygon of the array of polygons included in the time zone to generate a set of cells associated with the time zone comprises: for each polygon, generating a rectangular envelope that surrounds the polygon and includes a grid of rectangular cells, a size of the cells based on an order value, discarding any cell of the grid that fails to intersect the polygon to generate a set of un-discarded cells, and generating a cell identifier for each cell in the set of un-discarded cells based on a space-filling curve, thereby generating a set of cell identifiers for the polygon; the sets of cell identifiers generated for the polygons of the array of polygons of the time zone forming the set of cells associated with the time zone. 4. The method of claim 3 , wherein said generating a cell identifier for each cell in the set of un-discarded cells based on a space-filling curve comprises: generating a cell identifier for each cell in the set of un-discarded cells based on a Hilbert curve. 5. The method of claim 3 , further comprising: for each time zone, converting a format of the set of cells associated with the time zone to a set of ranges of cell identifiers. 6. The method of claim 4 , wherein said eliminating duplicate cell entries in the plurality of sets of cells associated with the time zones comprises: combining the sets of ranges of cell identifiers associated with all time zones into a superset of ranges of cell identifiers for all time zones; sorting the superset of ranges of cell identifiers; for each cell having a cell identifier appearing in multiple ranges associated with time zones in the superset, determining a plurality of areas in the cell for time zones associated with a corresponding plurality of ranges of the superset that includes the cell identifier, determining which time zone has the largest of the areas in the cell, and deleting the cell identifier from the plurality of ranges in the superset other than the range associated with time zone determined to have the largest area in the cell. 7. The method of claim 1 , further comprising: providing the generated time zone index file to at least one computing device to use for time zone determination. 8. A computing device, comprising: a location data source that provides location information that indicates a location of the computing device; at least one processor circuit; and at least one memory that stores program code configured to be executed by the at least one processor circuit, the program code comprising: a time zone identifier determiner configured to receive map data defining a world map as an array of polygons with associated time zones, and to determine a time zone identifier array based on the map data that includes a time zone identifier for each time zone identified in the map data; a polygon analyzer configured to, for each time zone, analyze each polygon of the array of polygons included in the time zone to generate a set of cells associated with the time zone, thereby generating a plurality of sets of cells associated with the time zones; a duplicate remover configured to eliminate duplicate cell entries in the plurality of sets of cells associated with the time zones; and a file encoder configured to generate a time zone index file that includes the plurality of sets of cells with corresponding time zone identifiers. 9. The computing device of claim 8 , wherein the time zone identifier determiner is further configured to: determine the time zone identifier array to include time zone identifiers according to a first time zone data type; and map the time zone identifiers from a first time zone data type to a second time zone data type. 10. The computing device of claim 8 , wherein the polygon analyzer is further configured to: for each polygon, generate a rectangular envelope that surrounds the polygon and includes a grid of rectangular cells, a size of the cells based on an order value, discard any cell of the grid that fails to intersect the polygon to generate a set of un-discarded cells, and generate a cell identifier for each cell in the set of un-discarded cells based on a space-filling curve, thereby generating a set of cell identifiers for the polygon, the sets of cell identifiers generated for the polygons of the array of polygons of the time zone forming the set of cells associated with the time zone. 11. The computing device of claim 10 , wherein the polygon analyzer is further configured to generate a cell identifier for each cell in the set of un-discarded cells based on a space-filling curve by generating a cell identifier for each cell in the set of un-discarded cells based on a Hilbert curve. 12. The computing device of claim 10 , wherein the polygon analyzer is further configured to, for each time zone, convert a format of the set of cells associated with the time zone to a set of ranges of cell identifiers. 13. The computing device of claim 11 , wherein, to eliminate duplicate cell entries, the duplicate remover is configured to: combine the sets of ranges of cell identifiers associated with all time zones into a superset of ranges of cell identifiers for all time zones; sort the superset of ranges of cell identifiers; for each cell having a cell identifier appearing in multiple ranges associated with time zones in the superset, determine a plurality of areas in the cell for time zones associated with a corresponding plurality of ranges of the superset that includes the cell identifier, determine which time zone has the largest of the areas in the cell, and delete the cell identifier from the plurality of ranges in the superset other than the range associated with time zone determined to have the largest area in the cell. 14. A computer-readable memory device having program code recorded thereon that when executed by at least one processor of a computing device causes the at least one processor to perform operations, the operations comprising: receiving map data defining a world map as an array of polygons with associated time zones; determining a time zone identifier array based on the map data that includes a time zone identifier for each time zone identified in the map data; for each time zone, analyzing each polygon of the array of polygons included in the time zone to generate a set of cells associated with the time zone, thereby generating a plurality of sets of cells associated with the time zones; eliminating duplicate cell entries in the plural

Assignees

Inventors

Classifications

  • G04G9/0076Primary

    in which the time in another time-zone or in another city can be displayed at will · CPC title

  • Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences · CPC title

  • Setting the time according to the time information carried or implied by the radio signal · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10503124B2 cover?
Methods, systems, apparatuses, and computer program products are provided for enabling devices to determine the time zone in which they are located. A mobile device may receive location information from one or more sources. Based thereon, the current location of the mobile device may be determined in terms of latitude and longitude. The indication of the current location may be converted to an …
Who is the assignee on this patent?
Microsoft Technology Licensing Llc
What technology area does this patent fall under?
Primary CPC classification G04G9/0076. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 10 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).