Status Update
Comments
ze...@google.com <ze...@google.com>
sg...@google.com <sg...@google.com> #2
Lars, could you explain why not just using the java.time
package exclusively does not work for you? Will the following work?
ZoneId = zoneId = ...
TimeZone tz = java.util.TimeZone.getTimeZone(zoneId.toString());
[Deleted User] <[Deleted User]> #3
There is a difference between the 2 methods when you call .getID()
on the resulting TimeZone
instance
Considering the following example:
TimeZone.getTimeZone("GMT+02:00").getID() //results in "GMT+02:00"
TimeZone.getTimeZone("+02:00").getID() // results in "GMT" which is in my opinion incorrect
The output for zoneId.toString()
doesn't include GMT
thus resulting in the incorrect id.
This is fixed by the java.util.TimeZone.getTimeZone(ZoneId zoneId)
method which adds the GMT
information, as can be seen in the method body:
public static TimeZone getTimeZone(ZoneId zoneId) {
String tzid = zoneId.getId(); // throws an NPE if null
char c = tzid.charAt(0);
if (c == '+' || c == '-') {
tzid = "GMT" + tzid;
} else if (c == 'Z' && tzid.length() == 1) {
tzid = "UTC";
}
return getTimeZone(tzid);
}
ap...@google.com <ap...@google.com> #5
Branch: master
commit 1d3fb390c3ad09d0f198cf5edbf8b4a0c8de3a4a
Author: Søren Gjesse <sgjesse@google.com>
Date: Thu Jun 25 18:03:04 2020
Add library desugaring support for java.util.TimeZone
Methods getTimeZone and toZoneId added.
Bug: 159275214
Change-Id: Ib40a10369948c34abd3f29d887739aaf73cd55f6
M src/library_desugar/desugar_jdk_libs.json
M src/test/java/com/android/tools/r8/desugar/desugaredlibrary/JavaTimeTest.java
ap...@google.com <ap...@google.com> #6
Branch: 2.0
commit 9fd9f833122467eacda54db9af0766e411c8e47b
Author: Søren Gjesse <sgjesse@google.com>
Date: Tue Jun 30 13:18:37 2020
Version 2.0.92
Cherry-pick: Add reproduction of
CL:
Cherry-pick: Add library desugaring support for java.util.TimeZone
CL:
Bug: 159441805
Bug: 159275214
Change-Id: Ib9710d28b1337d507fdb52f20e8cd4ebc5f2026e
M src/library_desugar/desugar_jdk_libs.json
M src/main/java/com/android/tools/r8/Version.java
M src/test/java/com/android/tools/r8/desugar/desugaredlibrary/JavaTimeTest.java
M src/test/java/com/android/tools/r8/desugar/desugaredlibrary/RetargetOverrideTest.java
D src/test/java/com/android/tools/r8/desugar/desugaredlibrary/conversiontests/BasicTimeConversionTest.java
ap...@google.com <ap...@google.com> #7
Branch: 2.1
commit bff95b47b444dd807d95cad7dec1413aa73f2473
Author: Søren Gjesse <sgjesse@google.com>
Date: Tue Jun 30 11:57:42 2020
Version 2.1.46
Cherry-pick: Add reproduction of
CL:
Cherry-pick: Add library desugaring support for java.util.TimeZone
CL:
Bug: 159441805
Bug: 159275214
Change-Id: If05f3cee337646c2915340d9c59aaa80c8d2d4f7
M src/library_desugar/desugar_jdk_libs.json
M src/main/java/com/android/tools/r8/Version.java
M src/test/java/com/android/tools/r8/MarkersTest.java
M src/test/java/com/android/tools/r8/desugar/desugaredlibrary/JavaTimeTest.java
M src/test/java/com/android/tools/r8/desugar/desugaredlibrary/RetargetOverrideTest.java
D src/test/java/com/android/tools/r8/desugar/desugaredlibrary/conversiontests/BasicTimeConversionTest.java
cl...@google.com <cl...@google.com>
sg...@google.com <sg...@google.com> #8
The updated configuration has now finally been published, so with
dependencies {
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.0.10'
}
there is support for methods getTimeZone and toZoneId on java.util.TimeZone.
[Deleted User] <[Deleted User]> #9
I just tested getTimeZone
in the new version 1.0.10
on api25 and its seems to work,
however the linter in Android studio still flags the method with Call requires API level 26 (current min is 21): java.util.TimeZone#getTimeZone
(I also tried restarted Android studio and invalidated the caches)
Description
No description yet.