1package {
2    default_team: "trendy_team_android_settings_app",
3    default_applicable_licenses: ["packages_apps_Settings_license"],
4}
5
6// Added automatically by a large-scale-change
7// See: http://go/android-license-faq
8license {
9    name: "packages_apps_Settings_license",
10    visibility: [":__subpackages__"],
11    license_kinds: [
12        "SPDX-license-identifier-Apache-2.0",
13    ],
14    license_text: [
15        "NOTICE",
16    ],
17}
18
19java_library {
20    name: "settings-logtags",
21    srcs: ["src/**/*.logtags"],
22}
23
24genrule {
25    name: "statslog-settings-java-gen",
26    tools: ["stats-log-api-gen"],
27    cmd: "$(location stats-log-api-gen) --java $(out) --module settings" +
28        " --javaPackage com.android.settings.core.instrumentation --javaClass SettingsStatsLog",
29    out: ["com/android/settings/core/instrumentation/SettingsStatsLog.java"],
30}
31
32java_library {
33    name: "statslog-settings",
34    srcs: [
35        ":statslog-settings-java-gen",
36    ],
37}
38
39java_library {
40    name: "Settings-change-ids",
41    srcs: ["src/com/android/settings/ChangeIds.java"],
42    libs: [
43        "app-compat-annotations",
44    ],
45}
46
47android_library {
48    name: "Settings-core",
49    defaults: [
50        "SettingsLib-search-defaults",
51        "SettingsLintDefaults",
52        "SpaPrivilegedLib-defaults",
53    ],
54
55    srcs: [
56        "src/**/*.java",
57        "src/**/*.kt",
58    ],
59    exclude_srcs: [
60        "src/com/android/settings/biometrics/fingerprint2/lib/**/*.kt",
61    ],
62    use_resource_processor: true,
63    resource_dirs: [
64        "res",
65        "res-export", // for external usage
66        "res-product",
67    ],
68    static_libs: [
69        // External dependencies
70        "androidx.navigation_navigation-fragment-ktx",
71        "androidx.window_window-java",
72        "gson",
73        "guava",
74
75        // Android internal dependencies
76        "BiometricsSharedLib",
77        "SystemUIUnfoldLib",
78        "WifiTrackerLib",
79        "android.hardware.dumpstate-V1-java",
80        "android.hardware.dumpstate-V1.0-java",
81        "android.hardware.dumpstate-V1.1-java",
82        "android.view.accessibility.flags-aconfig-java",
83        "com_android_server_accessibility_flags_lib",
84        "net-utils-framework-common",
85        "notification_flags_lib",
86        "securebox",
87        "android.os.flags-aconfig-java",
88
89        // Settings dependencies
90        "FingerprintManagerInteractor",
91        "MediaDrmSettingsFlagsLib",
92        "Settings-change-ids",
93        "SettingsLib",
94        "SettingsLibDataStore",
95        "SettingsLibActivityEmbedding",
96        "aconfig_settings_flags_lib",
97        "accessibility_settings_flags_lib",
98        "contextualcards",
99        "development_settings_flag_lib",
100        "factory_reset_flags_lib",
101        "fuelgauge-log-protos-lite",
102        "fuelgauge-protos-lite",
103        "settings-contextual-card-protos-lite",
104        "settings-log-bridge-protos-lite",
105        "settings-logtags",
106        "settings-telephony-protos-lite",
107        "statslog-settings",
108        "telephony_flags_core_java_lib",
109        "setupdesign-lottie-loading-layout",
110        "device_policy_aconfig_flags_lib",
111        "kotlinx-coroutines-core",
112        "kotlinx-coroutines-android",
113    ],
114
115    plugins: ["androidx.room_room-compiler-plugin"],
116
117    errorprone: {
118        extra_check_modules: ["//external/nullaway:nullaway_plugin"],
119        javacflags: [
120            "-XepOpt:NullAway:AnnotatedPackages=com.android.settings",
121        ],
122    },
123
124    libs: [
125        "telephony-common",
126        "ims-common",
127    ],
128}
129
130platform_compat_config {
131    name: "settings-platform-compat-config",
132    src: ":Settings-change-ids",
133    system_ext_specific: true,
134}
135
136// Build the Settings APK
137android_app {
138    name: "Settings",
139    defaults: [
140        "platform_app_defaults",
141        "SpaPrivilegedLib-defaults",
142    ],
143    platform_apis: true,
144    certificate: "platform",
145    system_ext_specific: true,
146    privileged: true,
147    required: [
148        "privapp_whitelist_com.android.settings",
149        "settings-platform-compat-config",
150    ],
151    static_libs: ["Settings-core"],
152    uses_libs: ["org.apache.http.legacy"],
153    use_resource_processor: true,
154    resource_dirs: [],
155    optimize: {
156        proguard_flags_files: ["proguard.flags"],
157    },
158}
159
160android_library_import {
161    name: "contextualcards",
162    aars: ["libs/contextualcards.aar"],
163}
164
165filegroup {
166    name: "Settings_proguard_flags",
167    srcs: ["proguard.flags"],
168}
169