diff options
3 files changed, 21 insertions, 5 deletions
diff --git a/protos/src/main/proto/analytics_enums.proto b/protos/src/main/proto/analytics_enums.proto index 8b0d6fe..c5b9e9b 100644 --- a/protos/src/main/proto/analytics_enums.proto +++ b/protos/src/main/proto/analytics_enums.proto @@ -579,6 +579,7 @@ enum BooleanOption { ADDITIONAL_ARTIFACTS_IN_MODEL = 165; SUPPRESS_EXTRACT_NATIVE_LIBS_WARNINGS = 166; EXCLUDE_LIBRARY_COMPONENTS_FROM_CONSTRAINTS = 167; + ENABLE_EMULATOR_CONTROL = 168; } enum OptionalBooleanOption { diff --git a/shared/src/main/java/com/android/tools/analytics/AnalyticsPaths.kt b/shared/src/main/java/com/android/tools/analytics/AnalyticsPaths.kt index 3e52b9e..fb4ff1a 100644 --- a/shared/src/main/java/com/android/tools/analytics/AnalyticsPaths.kt +++ b/shared/src/main/java/com/android/tools/analytics/AnalyticsPaths.kt @@ -37,15 +37,20 @@ object AnalyticsPaths { */ @JvmStatic fun getAndEnsureAndroidSettingsHome(): String { - // currently can't be shared with AndroidLocation see b/37123089 - val prefsRoot = getEnvOrPropValue(EnvironmentVariable.ANDROID_PREFS_ROOT, SystemProperty.ANDROID_PREFS_ROOT) - ?: getEnvOrPropValue(EnvironmentVariable.ANDROID_SDK_HOME, SystemProperty.ANDROID_SDK_HOME) - ?: Paths.get(Environment.instance.getSystemProperty(SystemProperty.USER_HOME)!!, ".android").toString() + val prefsRoot = getAndroidSettingsHome() File(prefsRoot).mkdirs() return prefsRoot } + @JvmStatic + fun getAndroidSettingsHome(): String { + // currently can't be shared with AndroidLocation see b/37123089 + return getEnvOrPropValue(EnvironmentVariable.ANDROID_PREFS_ROOT, SystemProperty.ANDROID_PREFS_ROOT) + ?: getEnvOrPropValue(EnvironmentVariable.ANDROID_SDK_HOME, SystemProperty.ANDROID_SDK_HOME) + ?: Paths.get(Environment.instance.getSystemProperty(SystemProperty.USER_HOME)!!, ".android").toString() + } + private fun getEnvOrPropValue( envVar: EnvironmentVariable, sysProp: SystemProperty diff --git a/shared/src/main/java/com/android/tools/analytics/AnalyticsSettings.kt b/shared/src/main/java/com/android/tools/analytics/AnalyticsSettings.kt index 8c36f11..7af01f9 100644 --- a/shared/src/main/java/com/android/tools/analytics/AnalyticsSettings.kt +++ b/shared/src/main/java/com/android/tools/analytics/AnalyticsSettings.kt @@ -391,15 +391,25 @@ object AnalyticsSettings { } } + private const val ANALYTICS_SETTINGS = "analytics.settings" + /** * Helper to get the file to read/write settings from based on the configured android settings * home. */ internal val settingsFile: File - get() = Paths.get(AnalyticsPaths.getAndEnsureAndroidSettingsHome(), "analytics.settings") + get() = Paths.get(AnalyticsPaths.getAndEnsureAndroidSettingsHome(), ANALYTICS_SETTINGS) .toFile() /** + * Check if the [ANALYTICS_SETTINGS] file exists without creating parent directories + */ + @JvmStatic + fun settingsFileExists(): Boolean { + return File(AnalyticsPaths.getAndroidSettingsHome(), ANALYTICS_SETTINGS).exists() + } + + /** * Gets a binary blob to ensure per user anonymization. Gets automatically rotated every 28 * days. Primarily used by [Anonymizer]. */ |