[automerger skipped] DO NOT MERGE - Merge Android 13 am: 2fb7baf7ff -s ours am: 5b716fffed -s ours am: 30d8460a24 -s ours

am skip reason: Merged-In I3da1eb868384428a826ca9ef18310b85fc664cf0 with SHA-1 94071435d7 is already in history

Original change: https://android-review.googlesource.com/c/platform/packages/modules/GeoTZ/+/2186862

Change-Id: Ie54458a82b855e56450810724da683a1a2e27651
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
tree: f84a56eefed9a8534592ed4435d96b51bc67c63f
  1. apex/
  2. app/
  3. common/
  4. data_pipeline/
  5. geotz_lookup/
  6. locationtzprovider/
  7. output_data/
  8. s2storage/
  9. tzbb_data/
  10. validation/
  11. download-tzbb-files.sh
  12. OWNERS
  13. PREUPLOAD.cfg
  14. README.md
  15. run-data-pipeline.sh
README.md

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/.