Merge "Provide a new command line for host tests" into sc-dev

This commit is contained in:
Neil Fuller
2021-05-17 16:16:40 +00:00
committed by Android (Google) Code Review
3 changed files with 27 additions and 0 deletions

View File

@@ -47,6 +47,13 @@ public interface TimeZoneDetector {
*/
String SHELL_COMMAND_SET_AUTO_DETECTION_ENABLED = "set_auto_detection_enabled";
/**
* A shell command that prints whether the telephony-based time zone detection feature is
* supported on the device.
* @hide
*/
String SHELL_COMMAND_IS_TELEPHONY_DETECTION_SUPPORTED = "is_telephony_detection_supported";
/**
* A shell command that prints whether the geolocation-based time zone detection feature is
* supported on the device.

View File

@@ -304,6 +304,13 @@ public final class TimeZoneDetectorService extends ITimeZoneDetectorService.Stub
mHandler.post(() -> mTimeZoneDetectorStrategy.suggestTelephonyTimeZone(timeZoneSuggestion));
}
boolean isTelephonyTimeZoneDetectionSupported() {
enforceManageTimeZoneDetectorPermission();
return ServiceConfigAccessor.getInstance(mContext)
.isTelephonyTimeZoneDetectionFeatureSupported();
}
boolean isGeoTimeZoneDetectionSupported() {
enforceManageTimeZoneDetectorPermission();

View File

@@ -18,6 +18,7 @@ package com.android.server.timezonedetector;
import static android.app.timezonedetector.TimeZoneDetector.SHELL_COMMAND_IS_AUTO_DETECTION_ENABLED;
import static android.app.timezonedetector.TimeZoneDetector.SHELL_COMMAND_IS_GEO_DETECTION_ENABLED;
import static android.app.timezonedetector.TimeZoneDetector.SHELL_COMMAND_IS_GEO_DETECTION_SUPPORTED;
import static android.app.timezonedetector.TimeZoneDetector.SHELL_COMMAND_IS_TELEPHONY_DETECTION_SUPPORTED;
import static android.app.timezonedetector.TimeZoneDetector.SHELL_COMMAND_SERVICE_NAME;
import static android.app.timezonedetector.TimeZoneDetector.SHELL_COMMAND_SET_AUTO_DETECTION_ENABLED;
import static android.app.timezonedetector.TimeZoneDetector.SHELL_COMMAND_SET_GEO_DETECTION_ENABLED;
@@ -61,6 +62,8 @@ class TimeZoneDetectorShellCommand extends ShellCommand {
return runIsAutoDetectionEnabled();
case SHELL_COMMAND_SET_AUTO_DETECTION_ENABLED:
return runSetAutoDetectionEnabled();
case SHELL_COMMAND_IS_TELEPHONY_DETECTION_SUPPORTED:
return runIsTelephonyDetectionSupported();
case SHELL_COMMAND_IS_GEO_DETECTION_SUPPORTED:
return runIsGeoDetectionSupported();
case SHELL_COMMAND_IS_GEO_DETECTION_ENABLED:
@@ -89,6 +92,13 @@ class TimeZoneDetectorShellCommand extends ShellCommand {
return 0;
}
private int runIsTelephonyDetectionSupported() {
final PrintWriter pw = getOutPrintWriter();
boolean enabled = mInterface.isTelephonyTimeZoneDetectionSupported();
pw.println(enabled);
return 0;
}
private int runIsGeoDetectionSupported() {
final PrintWriter pw = getOutPrintWriter();
boolean enabled = mInterface.isGeoTimeZoneDetectionSupported();
@@ -169,6 +179,9 @@ class TimeZoneDetectorShellCommand extends ShellCommand {
pw.printf(" Prints true/false according to the automatic time zone detection setting\n");
pw.printf(" %s true|false\n", SHELL_COMMAND_SET_AUTO_DETECTION_ENABLED);
pw.printf(" Sets the automatic time zone detection setting.\n");
pw.printf(" %s\n", SHELL_COMMAND_IS_TELEPHONY_DETECTION_SUPPORTED);
pw.printf(" Prints true/false according to whether telephony time zone detection is"
+ " supported on this device.\n");
pw.printf(" %s\n", SHELL_COMMAND_IS_GEO_DETECTION_SUPPORTED);
pw.printf(" Prints true/false according to whether geolocation time zone detection is"
+ " supported on this device.\n");