summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
authorNeil Fuller <nfuller@google.com>2020-09-24 17:25:24 +0100
committerNeil Fuller <nfuller@google.com>2020-09-30 13:34:10 +0100
commit9ec32ea53490bbdcdf01be28a6e2fa56e69d2e68 (patch)
tree7411493542ed38b1bfbcbf31be2adacf30ab9e3c /core/java/android
parent02d943f44d4ed11a7cde1fa33a4c0c07b9cb7e3c (diff)
System API annotation and API .txt changes
New APIs are being exposed for use by SetUp Wizard, which requires System APIs. The APIs enable the calling app to determine the capabilities for / config of the current user that affect time zone detection and then alter them. This commit also contains changes to the Shell package needed for the CTS tests being added to test the new APIs. See the associated CTS commit for details. The primary usecase: The rules for who can do what and when for time zone detection are becoming more complicated, and device and user capabilities will be affected by compile time constants, device config (resources) and device hardware. By exposing this API, the complex logic can be encoded in one place (the system server), rather than duplicating them in multiple client apps. These APIs are also intended for use by SettingsUI (and the various form factor versions of that), but settings apps do not require them to be marked with @SystemApi. Bug: 159891384 Test: atest CtsTimeTestCases Change-Id: I1eb6a68a74217106f81cb9525ad9370c805eecf2
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/app/time/TimeManager.java3
-rw-r--r--core/java/android/app/time/TimeZoneCapabilities.java3
-rw-r--r--core/java/android/app/time/TimeZoneCapabilitiesAndConfig.java3
-rw-r--r--core/java/android/app/time/TimeZoneConfiguration.java5
4 files changed, 9 insertions, 5 deletions
diff --git a/core/java/android/app/time/TimeManager.java b/core/java/android/app/time/TimeManager.java
index 9864afba534a..4796d8db3e96 100644
--- a/core/java/android/app/time/TimeManager.java
+++ b/core/java/android/app/time/TimeManager.java
@@ -18,6 +18,7 @@ package android.app.time;
import android.annotation.NonNull;
import android.annotation.RequiresPermission;
+import android.annotation.SystemApi;
import android.annotation.SystemService;
import android.app.timezonedetector.ITimeZoneDetectorService;
import android.content.Context;
@@ -36,7 +37,7 @@ import java.util.concurrent.Executor;
*
* @hide
*/
-// @SystemApi
+@SystemApi
@SystemService(Context.TIME_MANAGER)
public final class TimeManager {
private static final String TAG = "time.TimeManager";
diff --git a/core/java/android/app/time/TimeZoneCapabilities.java b/core/java/android/app/time/TimeZoneCapabilities.java
index c62c2b34f35d..df89c285d5bd 100644
--- a/core/java/android/app/time/TimeZoneCapabilities.java
+++ b/core/java/android/app/time/TimeZoneCapabilities.java
@@ -19,6 +19,7 @@ package android.app.time;
import android.annotation.IntDef;
import android.annotation.NonNull;
import android.annotation.Nullable;
+import android.annotation.SystemApi;
import android.app.timezonedetector.ManualTimeZoneSuggestion;
import android.app.timezonedetector.TimeZoneDetector;
import android.os.Parcel;
@@ -50,7 +51,7 @@ import java.util.Objects;
*
* @hide
*/
-// @SystemApi
+@SystemApi
public final class TimeZoneCapabilities implements Parcelable {
/** @hide */
diff --git a/core/java/android/app/time/TimeZoneCapabilitiesAndConfig.java b/core/java/android/app/time/TimeZoneCapabilitiesAndConfig.java
index 6a04f3f277ed..b339e53b8be3 100644
--- a/core/java/android/app/time/TimeZoneCapabilitiesAndConfig.java
+++ b/core/java/android/app/time/TimeZoneCapabilitiesAndConfig.java
@@ -17,6 +17,7 @@
package android.app.time;
import android.annotation.NonNull;
+import android.annotation.SystemApi;
import android.os.Parcel;
import android.os.Parcelable;
@@ -27,7 +28,7 @@ import java.util.Objects;
*
* @hide
*/
-// @SystemApi
+@SystemApi
public final class TimeZoneCapabilitiesAndConfig implements Parcelable {
public static final @NonNull Creator<TimeZoneCapabilitiesAndConfig> CREATOR =
diff --git a/core/java/android/app/time/TimeZoneConfiguration.java b/core/java/android/app/time/TimeZoneConfiguration.java
index 488818a528ef..c0a0c21b546d 100644
--- a/core/java/android/app/time/TimeZoneConfiguration.java
+++ b/core/java/android/app/time/TimeZoneConfiguration.java
@@ -18,6 +18,7 @@ package android.app.time;
import android.annotation.NonNull;
import android.annotation.StringDef;
+import android.annotation.SystemApi;
import android.os.Bundle;
import android.os.Parcel;
import android.os.Parcelable;
@@ -41,7 +42,7 @@ import java.util.Objects;
*
* @hide
*/
-// @SystemApi
+@SystemApi
public final class TimeZoneConfiguration implements Parcelable {
public static final @NonNull Creator<TimeZoneConfiguration> CREATOR =
@@ -188,7 +189,7 @@ public final class TimeZoneConfiguration implements Parcelable {
*
* @hide
*/
- // @SystemApi
+ @SystemApi
public static final class Builder {
private final Bundle mBundle = new Bundle();