2.0 KiB
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.shbelow.
geotz_lookup
- A high-level API for performing time zone ID lookups for a location using
the
tzs2.datfile. Supports host and device usage.
locationtzprovider
- A reference location time zone provider that uses AOSP APIs to obtain
location and the
geotz_lookupAPIs to obtain the time zone IDs to pass to the platform.
output_data
- Holds the
tzs2.datfile generated byrun-data-pipeline.shalong with the associated license files.
s2storage
- File reading / writing code and tools to support
tzs2.datgeneration on host, and the file's use on host and device. Sees2storage/README.mdfor 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.datfile against other data sources.
Data file update tools
download-tzbb-files.sh
- Used to refresh the data in
tzbb_data/from the timezone-boundary-builder project.
run-data-pipeline.sh
- Runs the
data_pipelinedata generation pipeline. It takes data fromtzbb_data/, processes it, and puts the resultingtzs2.datfile inoutput_data/.