You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.0 KiB

This directory contains code, tools and data for the AOSP reference location time zone provider. Location time zone providers are used for location-based time zone detection on Android. See Android's android.service.timezone.TimeZoneProviderService class for more details.

Directory structure

apex

  • Files associated with a proposed mainline module APEX to hold the AOSP reference location time zone provider.

common

  • Utility code shared between several subdirectories.

data_pipeline

  • Code for a host sample / reference data generation pipeline. See run-data-pipeline.sh below.

geotz_lookup

  • A high-level API for performing time zone ID lookups for a location using the tzs2.dat file. Supports host and device usage.

locationtzprovider

  • A reference location time zone provider that uses AOSP APIs to obtain location and the geotz_lookup APIs to obtain the time zone IDs to pass to the platform.

output_data

  • Holds the tzs2.dat file generated by run-data-pipeline.sh along with the associated license files.

s2storage

  • File reading / writing code and tools to support tzs2.dat generation on host, and the file's use on host and device. See s2storage/README.md for format details.

tzbb_data

  • Data / licenses from the external timezone-boundary-builder project. Used as input for the reference data generation pipeline.

validation

  • Tooling to help validate the tzs2.dat file against other data sources.

Data file update tools

download-tzbb-files.sh

run-data-pipeline.sh

  • Runs the data_pipeline data generation pipeline. It takes data from tzbb_data/, processes it, and puts the resulting tzs2.dat file in output_data/.