Provide filtering for obsolete zone IDs

Android holds information about when a time zone stopped/will stop
being relevant: There are numerous countries that have simplified
their time zones over time. Zone IDs that differed in the past still
exist in the data even if they have the same rules past a point in
time. Android's "notUsedAfter" data indicates that point in time.

This change will allow time zone detection in future to take into
account the difference between countries that have settled on a single
effective zone, and those where there are multiple zones that happen
to share the same offset at a given time. The "single effective zone"
case is a stronger signal than one where there are several zones that
happen to agree at a specific time but differ in future.

Bug: 139928367
Test: atest libcore.libcore.timezone.CountryTimeZonesTest
Test: atest libcore.libcore.timezone.TimeZoneFinderTest
Change-Id: I37ce23ed7c77334470964e1e770960c8e8a05c1a
5 files changed