Loading core/res/AndroidManifest.xml +0 −4 Original line number Diff line number Diff line Loading @@ -7013,10 +7013,6 @@ android:permission="android.permission.BIND_JOB_SERVICE" > </service> <service android:name="com.android.server.timezone.TimeZoneUpdateIdler" android:permission="android.permission.BIND_JOB_SERVICE" > </service> <service android:name="com.android.server.usage.UsageStatsIdleService" android:permission="android.permission.BIND_JOB_SERVICE" > </service> Loading core/res/res/values/config.xml +0 −43 Original line number Diff line number Diff line Loading @@ -1743,49 +1743,6 @@ suggestions to TimeDetector service. See also config_autoTimeSourcesPriority. --> <bool name="config_enableGnssTimeUpdateService">false</bool> <!-- Enables the TimeZoneRuleManager service. This is the global switch for the updateable time zone update mechanism. --> <bool name="config_enableUpdateableTimeZoneRules">false</bool> <!-- Enables APK-based time zone update triggering. Set this to false when updates are triggered via external events and not by APK updates. For example, if an updater checks with a server on a regular schedule. [This is only used if config_enableUpdateableTimeZoneRules is true.] --> <bool name="config_timeZoneRulesUpdateTrackingEnabled">false</bool> <!-- The package of the time zone rules updater application. Expected to be the same for all Android devices that support APK-based time zone rule updates. A package-targeted com.android.intent.action.timezone.TRIGGER_RULES_UPDATE_CHECK intent will be sent to the updater app if the system server detects an update to the updater or data app packages. The package referenced here must have the android.permission.UPDATE_TIME_ZONE_RULES permission. [This is only used if config_enableUpdateableTimeZoneRules and config_timeZoneRulesUpdateTrackingEnabled are true.] --> <string name="config_timeZoneRulesUpdaterPackage" translatable="false">com.android.timezone.updater</string> <!-- The package of the time zone rules data application. Expected to be configured by OEMs to reference their own priv-app APK package. A package-targeted com.android.intent.action.timezone.TRIGGER_RULES_UPDATE_CHECK intent will be sent to the updater app if the system server detects an update to the updater or data app packages. [This is only used if config_enableUpdateableTimeZoneRules and config_timeZoneRulesUpdateTrackingEnabled are true.] --> <string name="config_timeZoneRulesDataPackage" translatable="false"></string> <!-- The allowed time in milliseconds between an update check intent being broadcast and the response being considered overdue. Reliability triggers will not fire in this time. [This is only used if config_enableUpdateableTimeZoneRules and config_timeZoneRulesUpdateTrackingEnabled are true.] --> <!-- 5 minutes --> <integer name="config_timeZoneRulesCheckTimeMillisAllowed">300000</integer> <!-- The number of times a time zone update check is allowed to fail before the system will stop reacting to reliability triggers. [This is only used if config_enableUpdateableTimeZoneRules and config_timeZoneRulesUpdateTrackingEnabled are true.] --> <integer name="config_timeZoneRulesCheckRetryCount">5</integer> <!-- Whether the geolocation time zone detection feature is enabled. Setting this to false means the feature cannot be used. Setting this to true means system server components can be tested and location time zone detection may be used if other configuration allows (see Loading core/res/res/values/symbols.xml +0 −6 Original line number Diff line number Diff line Loading @@ -324,12 +324,6 @@ <java-symbol type="bool" name="config_checkWallpaperAtBoot" /> <java-symbol type="string" name="config_wallpaperManagerServiceName" /> <java-symbol type="string" name="config_inputEventCompatProcessorOverrideClassName" /> <java-symbol type="bool" name="config_enableUpdateableTimeZoneRules" /> <java-symbol type="bool" name="config_timeZoneRulesUpdateTrackingEnabled" /> <java-symbol type="string" name="config_timeZoneRulesUpdaterPackage" /> <java-symbol type="string" name="config_timeZoneRulesDataPackage" /> <java-symbol type="integer" name="config_timeZoneRulesCheckTimeMillisAllowed" /> <java-symbol type="integer" name="config_timeZoneRulesCheckRetryCount" /> <java-symbol type="bool" name="config_sendAudioBecomingNoisy" /> <java-symbol type="bool" name="config_enableScreenshotChord" /> <java-symbol type="bool" name="config_enableWifiDisplay" /> Loading services/core/Android.bp +0 −2 Original line number Diff line number Diff line Loading @@ -142,8 +142,6 @@ java_library_static { ], static_libs: [ "time_zone_distro", "time_zone_distro_installer", "android.hardware.authsecret-V1.0-java", "android.hardware.boot-V1.0-java", "android.hardware.boot-V1.1-java", Loading services/core/java/com/android/server/RuntimeService.java +0 −61 Original line number Diff line number Diff line Loading @@ -20,21 +20,13 @@ import android.content.Context; import android.os.Binder; import android.service.runtime.DebugEntryProto; import android.service.runtime.RuntimeServiceInfoProto; import android.util.Slog; import android.util.proto.ProtoOutputStream; import com.android.i18n.timezone.DebugInfo; import com.android.i18n.timezone.I18nModuleDebug; import com.android.i18n.timezone.TimeZoneDataFiles; import com.android.internal.util.DumpUtils; import com.android.timezone.distro.DistroException; import com.android.timezone.distro.DistroVersion; import com.android.timezone.distro.FileUtils; import com.android.timezone.distro.TimeZoneDistro; import java.io.File; import java.io.FileDescriptor; import java.io.IOException; import java.io.PrintWriter; /** Loading @@ -61,7 +53,6 @@ public class RuntimeService extends Binder { ProtoOutputStream proto = null; DebugInfo i18nLibraryDebugInfo = I18nModuleDebug.getDebugInfo(); addTimeZoneApkDebugInfo(i18nLibraryDebugInfo); if (protoFormat) { proto = new ProtoOutputStream(fd); Loading @@ -85,20 +76,6 @@ public class RuntimeService extends Binder { return false; } /** * Add information to {@link DebugInfo} about the time zone data supplied by the * "Time zone updates via APK" feature. */ private static void addTimeZoneApkDebugInfo(DebugInfo coreLibraryDebugInfo) { // Add /data tz data set using the DistroVersion class (which libcore cannot use). // This update mechanism will be removed after the time zone APEX is launched so this // untidiness will disappear with it. String debugKeyPrefix = "core_library.timezone.source.data_"; String versionFileName = TimeZoneDataFiles.getDataTimeZoneFile( TimeZoneDistro.DISTRO_VERSION_FILE_NAME); addDistroVersionDebugInfo(versionFileName, debugKeyPrefix, coreLibraryDebugInfo); } /** * Prints {@code coreLibraryDebugInfo} to {@code pw}. * Loading Loading @@ -131,42 +108,4 @@ public class RuntimeService extends Binder { protoStream.end(entryToken); } } /** * Adds version information to {@code debugInfo} from the distro_version file that may exist * at {@code distroVersionFileName}. If the file does not exist or cannot be read this is * reported as debug information too. */ private static void addDistroVersionDebugInfo(String distroVersionFileName, String debugKeyPrefix, DebugInfo debugInfo) { File file = new File(distroVersionFileName); String statusKey = debugKeyPrefix + "status"; if (file.exists()) { try { byte[] versionBytes = FileUtils.readBytes(file, DistroVersion.DISTRO_VERSION_FILE_LENGTH); DistroVersion distroVersion = DistroVersion.fromBytes(versionBytes); String formatVersionString = distroVersion.formatMajorVersion + "." + distroVersion.formatMinorVersion; debugInfo.addStringEntry(statusKey, "OK") .addStringEntry(debugKeyPrefix + "formatVersion", formatVersionString) .addStringEntry(debugKeyPrefix + "rulesVersion", distroVersion.rulesVersion) .addStringEntry(debugKeyPrefix + "revision", distroVersion.revision); } catch (IOException | DistroException e) { debugInfo.addStringEntry(statusKey, "ERROR"); debugInfo.addStringEntry(debugKeyPrefix + "exception_class", e.getClass().getName()); debugInfo.addStringEntry(debugKeyPrefix + "exception_msg", e.getMessage()); logMessage("Error reading " + file, e); } } else { debugInfo.addStringEntry(statusKey, "NOT_FOUND"); } } private static void logMessage(String msg, Throwable t) { Slog.v(TAG, msg, t); } } Loading
core/res/AndroidManifest.xml +0 −4 Original line number Diff line number Diff line Loading @@ -7013,10 +7013,6 @@ android:permission="android.permission.BIND_JOB_SERVICE" > </service> <service android:name="com.android.server.timezone.TimeZoneUpdateIdler" android:permission="android.permission.BIND_JOB_SERVICE" > </service> <service android:name="com.android.server.usage.UsageStatsIdleService" android:permission="android.permission.BIND_JOB_SERVICE" > </service> Loading
core/res/res/values/config.xml +0 −43 Original line number Diff line number Diff line Loading @@ -1743,49 +1743,6 @@ suggestions to TimeDetector service. See also config_autoTimeSourcesPriority. --> <bool name="config_enableGnssTimeUpdateService">false</bool> <!-- Enables the TimeZoneRuleManager service. This is the global switch for the updateable time zone update mechanism. --> <bool name="config_enableUpdateableTimeZoneRules">false</bool> <!-- Enables APK-based time zone update triggering. Set this to false when updates are triggered via external events and not by APK updates. For example, if an updater checks with a server on a regular schedule. [This is only used if config_enableUpdateableTimeZoneRules is true.] --> <bool name="config_timeZoneRulesUpdateTrackingEnabled">false</bool> <!-- The package of the time zone rules updater application. Expected to be the same for all Android devices that support APK-based time zone rule updates. A package-targeted com.android.intent.action.timezone.TRIGGER_RULES_UPDATE_CHECK intent will be sent to the updater app if the system server detects an update to the updater or data app packages. The package referenced here must have the android.permission.UPDATE_TIME_ZONE_RULES permission. [This is only used if config_enableUpdateableTimeZoneRules and config_timeZoneRulesUpdateTrackingEnabled are true.] --> <string name="config_timeZoneRulesUpdaterPackage" translatable="false">com.android.timezone.updater</string> <!-- The package of the time zone rules data application. Expected to be configured by OEMs to reference their own priv-app APK package. A package-targeted com.android.intent.action.timezone.TRIGGER_RULES_UPDATE_CHECK intent will be sent to the updater app if the system server detects an update to the updater or data app packages. [This is only used if config_enableUpdateableTimeZoneRules and config_timeZoneRulesUpdateTrackingEnabled are true.] --> <string name="config_timeZoneRulesDataPackage" translatable="false"></string> <!-- The allowed time in milliseconds between an update check intent being broadcast and the response being considered overdue. Reliability triggers will not fire in this time. [This is only used if config_enableUpdateableTimeZoneRules and config_timeZoneRulesUpdateTrackingEnabled are true.] --> <!-- 5 minutes --> <integer name="config_timeZoneRulesCheckTimeMillisAllowed">300000</integer> <!-- The number of times a time zone update check is allowed to fail before the system will stop reacting to reliability triggers. [This is only used if config_enableUpdateableTimeZoneRules and config_timeZoneRulesUpdateTrackingEnabled are true.] --> <integer name="config_timeZoneRulesCheckRetryCount">5</integer> <!-- Whether the geolocation time zone detection feature is enabled. Setting this to false means the feature cannot be used. Setting this to true means system server components can be tested and location time zone detection may be used if other configuration allows (see Loading
core/res/res/values/symbols.xml +0 −6 Original line number Diff line number Diff line Loading @@ -324,12 +324,6 @@ <java-symbol type="bool" name="config_checkWallpaperAtBoot" /> <java-symbol type="string" name="config_wallpaperManagerServiceName" /> <java-symbol type="string" name="config_inputEventCompatProcessorOverrideClassName" /> <java-symbol type="bool" name="config_enableUpdateableTimeZoneRules" /> <java-symbol type="bool" name="config_timeZoneRulesUpdateTrackingEnabled" /> <java-symbol type="string" name="config_timeZoneRulesUpdaterPackage" /> <java-symbol type="string" name="config_timeZoneRulesDataPackage" /> <java-symbol type="integer" name="config_timeZoneRulesCheckTimeMillisAllowed" /> <java-symbol type="integer" name="config_timeZoneRulesCheckRetryCount" /> <java-symbol type="bool" name="config_sendAudioBecomingNoisy" /> <java-symbol type="bool" name="config_enableScreenshotChord" /> <java-symbol type="bool" name="config_enableWifiDisplay" /> Loading
services/core/Android.bp +0 −2 Original line number Diff line number Diff line Loading @@ -142,8 +142,6 @@ java_library_static { ], static_libs: [ "time_zone_distro", "time_zone_distro_installer", "android.hardware.authsecret-V1.0-java", "android.hardware.boot-V1.0-java", "android.hardware.boot-V1.1-java", Loading
services/core/java/com/android/server/RuntimeService.java +0 −61 Original line number Diff line number Diff line Loading @@ -20,21 +20,13 @@ import android.content.Context; import android.os.Binder; import android.service.runtime.DebugEntryProto; import android.service.runtime.RuntimeServiceInfoProto; import android.util.Slog; import android.util.proto.ProtoOutputStream; import com.android.i18n.timezone.DebugInfo; import com.android.i18n.timezone.I18nModuleDebug; import com.android.i18n.timezone.TimeZoneDataFiles; import com.android.internal.util.DumpUtils; import com.android.timezone.distro.DistroException; import com.android.timezone.distro.DistroVersion; import com.android.timezone.distro.FileUtils; import com.android.timezone.distro.TimeZoneDistro; import java.io.File; import java.io.FileDescriptor; import java.io.IOException; import java.io.PrintWriter; /** Loading @@ -61,7 +53,6 @@ public class RuntimeService extends Binder { ProtoOutputStream proto = null; DebugInfo i18nLibraryDebugInfo = I18nModuleDebug.getDebugInfo(); addTimeZoneApkDebugInfo(i18nLibraryDebugInfo); if (protoFormat) { proto = new ProtoOutputStream(fd); Loading @@ -85,20 +76,6 @@ public class RuntimeService extends Binder { return false; } /** * Add information to {@link DebugInfo} about the time zone data supplied by the * "Time zone updates via APK" feature. */ private static void addTimeZoneApkDebugInfo(DebugInfo coreLibraryDebugInfo) { // Add /data tz data set using the DistroVersion class (which libcore cannot use). // This update mechanism will be removed after the time zone APEX is launched so this // untidiness will disappear with it. String debugKeyPrefix = "core_library.timezone.source.data_"; String versionFileName = TimeZoneDataFiles.getDataTimeZoneFile( TimeZoneDistro.DISTRO_VERSION_FILE_NAME); addDistroVersionDebugInfo(versionFileName, debugKeyPrefix, coreLibraryDebugInfo); } /** * Prints {@code coreLibraryDebugInfo} to {@code pw}. * Loading Loading @@ -131,42 +108,4 @@ public class RuntimeService extends Binder { protoStream.end(entryToken); } } /** * Adds version information to {@code debugInfo} from the distro_version file that may exist * at {@code distroVersionFileName}. If the file does not exist or cannot be read this is * reported as debug information too. */ private static void addDistroVersionDebugInfo(String distroVersionFileName, String debugKeyPrefix, DebugInfo debugInfo) { File file = new File(distroVersionFileName); String statusKey = debugKeyPrefix + "status"; if (file.exists()) { try { byte[] versionBytes = FileUtils.readBytes(file, DistroVersion.DISTRO_VERSION_FILE_LENGTH); DistroVersion distroVersion = DistroVersion.fromBytes(versionBytes); String formatVersionString = distroVersion.formatMajorVersion + "." + distroVersion.formatMinorVersion; debugInfo.addStringEntry(statusKey, "OK") .addStringEntry(debugKeyPrefix + "formatVersion", formatVersionString) .addStringEntry(debugKeyPrefix + "rulesVersion", distroVersion.rulesVersion) .addStringEntry(debugKeyPrefix + "revision", distroVersion.revision); } catch (IOException | DistroException e) { debugInfo.addStringEntry(statusKey, "ERROR"); debugInfo.addStringEntry(debugKeyPrefix + "exception_class", e.getClass().getName()); debugInfo.addStringEntry(debugKeyPrefix + "exception_msg", e.getMessage()); logMessage("Error reading " + file, e); } } else { debugInfo.addStringEntry(statusKey, "NOT_FOUND"); } } private static void logMessage(String msg, Throwable t) { Slog.v(TAG, msg, t); } }