Loading AconfigFlags.bp +9 −0 Original line number Diff line number Diff line Loading @@ -98,6 +98,7 @@ aconfig_declarations_group { "framework-jobscheduler-job.flags-aconfig-java", "framework_graphics_flags_java_lib", "hwui_flags_java_lib", "libcore_exported_aconfig_flags_lib", "power_flags_lib", "sdk_sandbox_flags_lib", "surfaceflinger_flags_java_lib", Loading Loading @@ -140,6 +141,14 @@ java_aconfig_library { defaults: ["framework-minus-apex-aconfig-java-defaults"], } // Core Libraries / libcore java_aconfig_library { name: "libcore_exported_aconfig_flags_lib", aconfig_declarations: "libcore-aconfig-flags", mode: "exported", defaults: ["framework-minus-apex-aconfig-java-defaults"], } // Telecom java_aconfig_library { name: "telecom_flags_core_java_lib", Loading core/java/android/text/format/DateIntervalFormat.java +11 −0 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.icu.util.ULocale; import android.util.LruCache; import com.android.internal.annotations.VisibleForTesting; import com.android.libcore.Flags; import java.text.FieldPosition; import java.util.TimeZone; Loading Loading @@ -123,4 +124,14 @@ public final class DateIntervalFormat { && c.get(Calendar.SECOND) == 0 && c.get(Calendar.MILLISECOND) == 0; } @VisibleForTesting(visibility = PACKAGE) public static boolean isLibcoreVFlagEnabled() { // Note that the Flags class is expected to be jarjar-ed in the build-time. // See go/repackage_flags // The full-qualified name should be like // com.android.internal.hidden_from_bootclasspath.com.android.libcore.Flags return Flags.vApis(); } } core/tests/coretests/src/android/text/format/DateIntervalFormatTest.java +9 −0 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ import static android.text.format.DateUtils.FORMAT_SHOW_YEAR; import static android.text.format.DateUtils.FORMAT_UTC; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import android.icu.util.Calendar; import android.icu.util.TimeZone; Loading Loading @@ -683,4 +684,12 @@ public class DateIntervalFormatTest { assertEquals("February 27\u2009\u2013\u2009March 1, 2004", fmt.apply(1077840000000L, 1078185600000L)); } @Test public void testIsLibcoreVFlagEnabled() { // This flag has been fully ramped. It should never be false. assertTrue(DateIntervalFormat.isLibcoreVFlagEnabled()); // Call a Android V API in libcore. assertEquals("\ud840\udc2b", Character.toString(0x2002B)); } } Loading
AconfigFlags.bp +9 −0 Original line number Diff line number Diff line Loading @@ -98,6 +98,7 @@ aconfig_declarations_group { "framework-jobscheduler-job.flags-aconfig-java", "framework_graphics_flags_java_lib", "hwui_flags_java_lib", "libcore_exported_aconfig_flags_lib", "power_flags_lib", "sdk_sandbox_flags_lib", "surfaceflinger_flags_java_lib", Loading Loading @@ -140,6 +141,14 @@ java_aconfig_library { defaults: ["framework-minus-apex-aconfig-java-defaults"], } // Core Libraries / libcore java_aconfig_library { name: "libcore_exported_aconfig_flags_lib", aconfig_declarations: "libcore-aconfig-flags", mode: "exported", defaults: ["framework-minus-apex-aconfig-java-defaults"], } // Telecom java_aconfig_library { name: "telecom_flags_core_java_lib", Loading
core/java/android/text/format/DateIntervalFormat.java +11 −0 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ import android.icu.util.ULocale; import android.util.LruCache; import com.android.internal.annotations.VisibleForTesting; import com.android.libcore.Flags; import java.text.FieldPosition; import java.util.TimeZone; Loading Loading @@ -123,4 +124,14 @@ public final class DateIntervalFormat { && c.get(Calendar.SECOND) == 0 && c.get(Calendar.MILLISECOND) == 0; } @VisibleForTesting(visibility = PACKAGE) public static boolean isLibcoreVFlagEnabled() { // Note that the Flags class is expected to be jarjar-ed in the build-time. // See go/repackage_flags // The full-qualified name should be like // com.android.internal.hidden_from_bootclasspath.com.android.libcore.Flags return Flags.vApis(); } }
core/tests/coretests/src/android/text/format/DateIntervalFormatTest.java +9 −0 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ import static android.text.format.DateUtils.FORMAT_SHOW_YEAR; import static android.text.format.DateUtils.FORMAT_UTC; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import android.icu.util.Calendar; import android.icu.util.TimeZone; Loading Loading @@ -683,4 +684,12 @@ public class DateIntervalFormatTest { assertEquals("February 27\u2009\u2013\u2009March 1, 2004", fmt.apply(1077840000000L, 1078185600000L)); } @Test public void testIsLibcoreVFlagEnabled() { // This flag has been fully ramped. It should never be false. assertTrue(DateIntervalFormat.isLibcoreVFlagEnabled()); // Call a Android V API in libcore. assertEquals("\ud840\udc2b", Character.toString(0x2002B)); } }