469 lines
15 KiB
Plaintext
Executable File
469 lines
15 KiB
Plaintext
Executable File
//
|
|
// Copyright (C) 2018 The Android Open Source Project
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
//
|
|
|
|
package {
|
|
default_applicable_licenses: ["frameworks_base_packages_SystemUI_license"],
|
|
}
|
|
|
|
// Added automatically by a large-scale-change
|
|
// See: http://go/android-license-faq
|
|
license {
|
|
name: "frameworks_base_packages_SystemUI_license",
|
|
visibility: [":__subpackages__"],
|
|
license_kinds: [
|
|
"SPDX-license-identifier-Apache-2.0",
|
|
],
|
|
license_text: [
|
|
"NOTICE",
|
|
],
|
|
}
|
|
|
|
// Opt-in configuration for code depending on Jetpack Compose.
|
|
soong_config_module_type {
|
|
name: "systemui_compose_java_defaults",
|
|
module_type: "java_defaults",
|
|
config_namespace: "ANDROID",
|
|
bool_variables: ["SYSTEMUI_USE_COMPOSE"],
|
|
properties: [
|
|
"srcs",
|
|
"static_libs",
|
|
],
|
|
}
|
|
|
|
systemui_compose_java_defaults {
|
|
name: "SystemUI_compose_defaults",
|
|
soong_config_variables: {
|
|
SYSTEMUI_USE_COMPOSE: {
|
|
// Because files in compose/features/ depend on SystemUI
|
|
// code, we compile those files when compiling SystemUI-core.
|
|
// We also compile the ComposeFacade in
|
|
// compose/facade/enabled/.
|
|
srcs: [
|
|
"compose/features/src/**/*.kt",
|
|
"compose/facade/enabled/src/**/*.kt",
|
|
],
|
|
|
|
// The dependencies needed by SystemUIComposeFeatures,
|
|
// except for SystemUI-core.
|
|
// Copied from compose/features/Android.bp.
|
|
static_libs: [
|
|
"PlatformComposeCore",
|
|
|
|
"androidx.compose.runtime_runtime",
|
|
"androidx.compose.material3_material3",
|
|
"androidx.activity_activity-compose",
|
|
],
|
|
|
|
// By default, Compose is disabled and we compile the ComposeFacade
|
|
// in compose/facade/disabled/.
|
|
conditions_default: {
|
|
srcs: ["compose/facade/disabled/src/**/*.kt"],
|
|
static_libs: [],
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
java_library {
|
|
name: "SystemUI-proto",
|
|
|
|
srcs: ["src/**/*.proto"],
|
|
|
|
proto: {
|
|
type: "nano",
|
|
},
|
|
|
|
libs: [
|
|
"WindowManager-Shell-proto",
|
|
],
|
|
}
|
|
|
|
java_library {
|
|
name: "SystemUI-tags",
|
|
srcs: ["src/com/android/systemui/EventLogTags.logtags"],
|
|
}
|
|
|
|
filegroup {
|
|
name: "ReleaseJavaFiles",
|
|
srcs: [
|
|
"src-release/**/*.kt",
|
|
"src-release/**/*.java",
|
|
],
|
|
}
|
|
|
|
filegroup {
|
|
name: "DebugJavaFiles",
|
|
srcs: [
|
|
"src-debug/**/*.kt",
|
|
"src-debug/**/*.java",
|
|
],
|
|
}
|
|
|
|
android_library {
|
|
name: "SystemUI-core",
|
|
defaults: [
|
|
"SystemUI_compose_defaults",
|
|
],
|
|
srcs: [
|
|
"src/**/*.kt",
|
|
"src/**/*.java",
|
|
"src/**/I*.aidl",
|
|
":ReleaseJavaFiles",
|
|
],
|
|
product_variables: {
|
|
debuggable: {
|
|
srcs: [":DebugJavaFiles"],
|
|
exclude_srcs: [":ReleaseJavaFiles"],
|
|
},
|
|
},
|
|
resource_dirs: [
|
|
"res-product",
|
|
"res-keyguard",
|
|
"res",
|
|
],
|
|
static_libs: [
|
|
"WifiTrackerLib",
|
|
"WindowManager-Shell",
|
|
"SystemUIAnimationLib",
|
|
"SystemUIPluginLib",
|
|
"SystemUISharedLib",
|
|
"SystemUICustomizationLib",
|
|
"SystemUI-statsd",
|
|
"SettingsLib",
|
|
"androidx.core_core-ktx",
|
|
"androidx.viewpager2_viewpager2",
|
|
"androidx.legacy_legacy-support-v4",
|
|
"androidx.recyclerview_recyclerview",
|
|
"androidx.preference_preference",
|
|
"androidx.appcompat_appcompat",
|
|
"androidx.concurrent_concurrent-futures",
|
|
"androidx.mediarouter_mediarouter",
|
|
"androidx.palette_palette",
|
|
"androidx.legacy_legacy-preference-v14",
|
|
"androidx.leanback_leanback",
|
|
"androidx.slice_slice-core",
|
|
"androidx.slice_slice-view",
|
|
"androidx.slice_slice-builders",
|
|
"androidx.arch.core_core-runtime",
|
|
"androidx.lifecycle_lifecycle-common-java8",
|
|
"androidx.lifecycle_lifecycle-extensions",
|
|
"androidx.lifecycle_lifecycle-runtime-ktx",
|
|
"androidx.dynamicanimation_dynamicanimation",
|
|
"androidx-constraintlayout_constraintlayout",
|
|
"androidx.exifinterface_exifinterface",
|
|
"androidx.test.ext.junit",
|
|
"com.google.android.material_material",
|
|
"kotlinx_coroutines_android",
|
|
"kotlinx_coroutines",
|
|
"iconloader_base",
|
|
"SystemUI-tags",
|
|
"SystemUI-proto",
|
|
"monet",
|
|
"dagger2",
|
|
"jsr330",
|
|
"lottie",
|
|
"LowLightDreamLib",
|
|
"motion_tool_lib",
|
|
"rockchip.hardware.hdmi-V1.0-java",
|
|
"rockchip.hardware.hdmi-V1.0-java-shallow",
|
|
],
|
|
manifest: "AndroidManifest.xml",
|
|
|
|
kotlincflags: ["-Xjvm-default=enable"],
|
|
|
|
plugins: ["dagger2-compiler"],
|
|
|
|
lint: {
|
|
extra_check_modules: ["SystemUILintChecker"],
|
|
},
|
|
}
|
|
|
|
filegroup {
|
|
name: "AAA-src",
|
|
srcs: ["tests/src/com/android/AAAPlusPlusVerifySysuiRequiredTestPropertiesTest.java"],
|
|
path: "tests/src",
|
|
}
|
|
|
|
filegroup {
|
|
name: "SystemUI-tests-utils",
|
|
srcs: [
|
|
"tests/utils/src/**/*.java",
|
|
"tests/utils/src/**/*.kt",
|
|
],
|
|
path: "tests/utils/src",
|
|
}
|
|
|
|
filegroup {
|
|
name: "SystemUI-tests-robolectric-pilots",
|
|
srcs: [
|
|
// data
|
|
"tests/src/com/android/systemui/keyguard/data/quickaffordance/CameraQuickAffordanceConfigTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/data/quickaffordance/DoNotDisturbQuickAffordanceConfigTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/data/quickaffordance/FakeKeyguardQuickAffordanceConfig.kt",
|
|
"tests/src/com/android/systemui/keyguard/data/quickaffordance/FlashlightQuickAffordanceConfigTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/data/quickaffordance/HomeControlsKeyguardQuickAffordanceConfigTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/data/quickaffordance/KeyguardQuickAffordanceLegacySettingSyncerTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/data/quickaffordance/KeyguardQuickAffordanceLocalUserSelectionManagerTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/data/quickaffordance/KeyguardQuickAffordanceRemoteUserSelectionManagerTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/data/quickaffordance/QrCodeScannerKeyguardQuickAffordanceConfigTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/data/quickaffordance/QuickAccessWalletKeyguardQuickAffordanceConfigTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/data/repository/KeyguardQuickAffordanceRepositoryTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/data/repository/KeyguardRepositoryImplTest.kt",
|
|
// domain
|
|
"tests/src/com/android/systemui/keyguard/domain/interactor/AlternateBouncerInteractorTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardInteractorTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/domain/interactor/AlternateBouncerInteractorTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardInteractorTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardQuickAffordanceInteractorTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardTransitionInteractorTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/domain/interactor/LightRevealScrimInteractorTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/domain/quickaffordance/FakeKeyguardQuickAffordanceRegistry.kt",
|
|
"tests/src/com/android/systemui/keyguard/domain/interactor/PrimaryBouncerInteractorWithCoroutinesTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/domain/interactor/KeyguardInteractorTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/domain/interactor/PrimaryBouncerInteractorWithCoroutinesTest.kt",
|
|
// ui
|
|
"tests/src/com/android/systemui/keyguard/ui/viewmodel/DreamingToLockscreenTransitionViewModelTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/ui/viewmodel/KeyguardBouncerViewModelTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/ui/viewmodel/GoneToDreamingTransitionViewModelTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/ui/viewmodel/LockscreenToDreamingTransitionViewModelTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/ui/viewmodel/LockscreenToOccludedTransitionViewModelTest.kt",
|
|
"tests/src/com/android/systemui/keyguard/ui/viewmodel/OccludedToLockscreenTransitionViewModelTest.kt",
|
|
],
|
|
path: "tests/src",
|
|
}
|
|
|
|
java_library {
|
|
name: "SystemUI-tests-concurrency",
|
|
srcs: [
|
|
"src/com/android/systemui/util/concurrency/DelayableExecutor.java",
|
|
"src/com/android/systemui/util/time/SystemClock.java",
|
|
"tests/utils/src/com/android/systemui/util/concurrency/FakeExecutor.java",
|
|
"tests/utils/src/com/android/systemui/util/time/FakeSystemClock.java",
|
|
],
|
|
jarjar_rules: ":jarjar-rules-shared",
|
|
}
|
|
|
|
android_library {
|
|
name: "SystemUI-tests-base",
|
|
manifest: "tests/AndroidManifest-base.xml",
|
|
resource_dirs: [
|
|
"tests/res",
|
|
"res-product",
|
|
"res-keyguard",
|
|
"res",
|
|
],
|
|
static_libs: [
|
|
"WifiTrackerLib",
|
|
"SystemUIAnimationLib",
|
|
"SystemUIPluginLib",
|
|
"SystemUISharedLib",
|
|
"SystemUICustomizationLib",
|
|
"SystemUI-statsd",
|
|
"SettingsLib",
|
|
"androidx.viewpager2_viewpager2",
|
|
"androidx.legacy_legacy-support-v4",
|
|
"androidx.recyclerview_recyclerview",
|
|
"androidx.preference_preference",
|
|
"androidx.appcompat_appcompat",
|
|
"androidx.concurrent_concurrent-futures",
|
|
"androidx.mediarouter_mediarouter",
|
|
"androidx.palette_palette",
|
|
"androidx.legacy_legacy-preference-v14",
|
|
"androidx.leanback_leanback",
|
|
"androidx.slice_slice-core",
|
|
"androidx.slice_slice-view",
|
|
"androidx.slice_slice-builders",
|
|
"androidx.arch.core_core-runtime",
|
|
"androidx.lifecycle_lifecycle-common-java8",
|
|
"androidx.lifecycle_lifecycle-extensions",
|
|
"androidx.lifecycle_lifecycle-runtime-ktx",
|
|
"androidx.dynamicanimation_dynamicanimation",
|
|
"androidx-constraintlayout_constraintlayout",
|
|
"androidx.exifinterface_exifinterface",
|
|
"kotlinx-coroutines-android",
|
|
"kotlinx-coroutines-core",
|
|
"kotlinx_coroutines_test",
|
|
"kotlin-reflect",
|
|
"iconloader_base",
|
|
"SystemUI-tags",
|
|
"SystemUI-proto",
|
|
"metrics-helper-lib",
|
|
"hamcrest-library",
|
|
"androidx.test.rules",
|
|
"testables",
|
|
"truth-prebuilt",
|
|
"monet",
|
|
"dagger2",
|
|
"jsr330",
|
|
"WindowManager-Shell",
|
|
"LowLightDreamLib",
|
|
"motion_tool_lib",
|
|
"androidx.core_core-animation-testing-nodeps",
|
|
"androidx.compose.ui_ui",
|
|
"rockchip.hardware.hdmi-V1.0-java",
|
|
"rockchip.hardware.hdmi-V1.0-java-shallow",
|
|
],
|
|
}
|
|
|
|
android_library {
|
|
name: "SystemUI-tests",
|
|
defaults: [
|
|
"SystemUI_compose_defaults",
|
|
],
|
|
manifest: "tests/AndroidManifest-base.xml",
|
|
additional_manifests: ["tests/AndroidManifest.xml"],
|
|
srcs: [
|
|
"tests/src/**/*.kt",
|
|
"tests/src/**/*.java",
|
|
"src/**/*.kt",
|
|
"src/**/*.java",
|
|
"src/**/I*.aidl",
|
|
":ReleaseJavaFiles",
|
|
":SystemUI-tests-utils",
|
|
],
|
|
static_libs: [
|
|
"SystemUI-tests-base",
|
|
"androidx.test.uiautomator",
|
|
"mockito-target-extended-minus-junit4",
|
|
"androidx.test.ext.junit",
|
|
],
|
|
libs: [
|
|
"android.test.runner",
|
|
"android.test.base",
|
|
"android.test.mock",
|
|
],
|
|
kotlincflags: ["-Xjvm-default=enable"],
|
|
aaptflags: [
|
|
"--extra-packages",
|
|
"com.android.systemui",
|
|
],
|
|
plugins: ["dagger2-compiler"],
|
|
}
|
|
|
|
android_app {
|
|
name: "SystemUIRobo-stub",
|
|
defaults: [
|
|
"platform_app_defaults",
|
|
"SystemUI_app_defaults",
|
|
"SystemUI_compose_defaults",
|
|
],
|
|
manifest: "tests/AndroidManifest-base.xml",
|
|
|
|
srcs: [
|
|
"src/**/*.kt",
|
|
"src/**/*.java",
|
|
"src/**/I*.aidl",
|
|
":ReleaseJavaFiles",
|
|
],
|
|
static_libs: [
|
|
"SystemUI-tests-base",
|
|
],
|
|
aaptflags: [
|
|
"--extra-packages",
|
|
"com.android.systemui",
|
|
],
|
|
dont_merge_manifests: true,
|
|
platform_apis: true,
|
|
system_ext_specific: true,
|
|
certificate: "platform",
|
|
privileged: true,
|
|
resource_dirs: [],
|
|
kotlincflags: ["-Xjvm-default=all"],
|
|
|
|
plugins: ["dagger2-compiler"],
|
|
}
|
|
|
|
android_robolectric_test {
|
|
name: "SystemUiRoboTests",
|
|
srcs: [
|
|
"tests/robolectric/src/**/*.kt",
|
|
"tests/robolectric/src/**/*.java",
|
|
":SystemUI-tests-utils",
|
|
":SystemUI-tests-robolectric-pilots",
|
|
],
|
|
static_libs: [
|
|
"androidx.test.uiautomator_uiautomator",
|
|
"androidx.test.ext.junit",
|
|
"inline-mockito-robolectric-prebuilt",
|
|
],
|
|
libs: [
|
|
"android.test.runner",
|
|
"android.test.base",
|
|
"android.test.mock",
|
|
"truth-prebuilt",
|
|
],
|
|
|
|
upstream: true,
|
|
|
|
instrumentation_for: "SystemUIRobo-stub",
|
|
java_resource_dirs: ["tests/robolectric/config"],
|
|
}
|
|
|
|
// Opt-out config for optimizing the SystemUI target using R8.
|
|
// Disabled via `export SYSTEMUI_OPTIMIZE_JAVA=false`, or explicitly in Make via
|
|
// `SYSTEMUI_OPTIMIZE_JAVA := false`.
|
|
soong_config_module_type {
|
|
name: "systemui_optimized_java_defaults",
|
|
module_type: "java_defaults",
|
|
config_namespace: "ANDROID",
|
|
bool_variables: ["SYSTEMUI_OPTIMIZE_JAVA"],
|
|
properties: ["optimize"],
|
|
}
|
|
|
|
systemui_optimized_java_defaults {
|
|
name: "SystemUI_app_defaults",
|
|
soong_config_variables: {
|
|
SYSTEMUI_OPTIMIZE_JAVA: {
|
|
optimize: {
|
|
enabled: true,
|
|
optimize: true,
|
|
shrink: true,
|
|
proguard_flags_files: ["proguard.flags"],
|
|
},
|
|
conditions_default: {
|
|
optimize: {
|
|
proguard_flags_files: ["proguard.flags"],
|
|
},
|
|
},
|
|
},
|
|
},
|
|
}
|
|
|
|
android_app {
|
|
name: "SystemUI",
|
|
defaults: [
|
|
"platform_app_defaults",
|
|
"SystemUI_app_defaults",
|
|
],
|
|
static_libs: [
|
|
"SystemUI-core",
|
|
],
|
|
resource_dirs: [],
|
|
|
|
platform_apis: true,
|
|
system_ext_specific: true,
|
|
certificate: "platform",
|
|
privileged: true,
|
|
|
|
kotlincflags: ["-Xjvm-default=enable"],
|
|
|
|
dxflags: ["--multi-dex"],
|
|
required: [
|
|
"privapp_whitelist_com.android.systemui",
|
|
"wmshell.protolog.json.gz",
|
|
],
|
|
}
|