1// 2// Copyright (C) 2021 The Android Open Source Project 3// 4// Licensed under the Apache License, Version 2.0 (the "License"); 5// you may not use this file except in compliance with the License. 6// You may obtain a copy of the License at 7// 8// http://www.apache.org/licenses/LICENSE-2.0 9// 10// Unless required by applicable law or agreed to in writing, software 11// distributed under the License is distributed on an "AS IS" BASIS, 12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13// See the License for the specific language governing permissions and 14// limitations under the License. 15// 16 17 18package { 19 default_applicable_licenses: ["Android-Apache-2.0"], 20} 21 22// Production-only files that should be excluded in tests. 23filegroup { 24 name: "ThemePicker_src_prod", 25 visibility: [":__subpackages__"], 26 srcs: ["src_override/com/android/customization/picker/CustomizationPickerApplication.java"], 27} 28 29java_library { 30 name: "ThemePickerOverridesLib", 31 srcs: [ 32 "src_override/**/*.java", 33 "src_override/**/*.kt", 34 ], 35 exclude_srcs: [":ThemePicker_src_prod"], 36 libs: [ 37 "hilt_android", 38 "ThemePickerLib", 39 ], 40} 41 42java_library { 43 name: "ThemePickerApplicationLib", 44 srcs: [":ThemePicker_src_prod"], 45 libs: [ 46 "hilt_android", 47 "ThemePickerLib", 48 "ThemePickerOverridesLib", 49 ], 50} 51 52 53filegroup { 54 name: "ThemePicker_Manifest", 55 srcs: [ 56 "AndroidManifest.xml", 57 ], 58} 59 60android_library { 61 name: "ThemePickerLib", 62 63 static_libs: [ 64 "guava", 65 "monet", 66 "renderscript_toolkit", 67 "WallpaperPicker2Lib", 68 "SettingsLibSettingsTheme", 69 "SystemUI-statsd", 70 "styleprotoslite", 71 "androidx.lifecycle_lifecycle-livedata-ktx", 72 "androidx.lifecycle_lifecycle-runtime-ktx", 73 "androidx.lifecycle_lifecycle-viewmodel-ktx", 74 "androidx.recyclerview_recyclerview", 75 "SystemUICustomizationLib", 76 "hilt_android", 77 // Compose 78 "PlatformComposeCore", 79 "androidx.activity_activity-compose", 80 "androidx.compose.foundation_foundation", 81 "androidx.compose.foundation_foundation-layout", 82 "androidx.compose.material3_material3", 83 "androidx.compose.runtime_runtime", 84 "androidx.compose.ui_ui", 85 "androidx.compose.ui_ui-tooling", 86 "androidx.lifecycle_lifecycle-runtime-compose", 87 "androidx.lifecycle_lifecycle-viewmodel-compose", 88 ], 89 90 srcs: [ 91 "src/**/*.java", 92 "src/**/*.kt", 93 ], 94 95 resource_dirs: [ 96 "res", 97 "res_override", 98 ], 99 100 manifest: "AndroidManifest-empty.xml", 101} 102 103java_defaults { 104 name: "ThemePicker_defaults", 105 static_libs: [ 106 "ThemePickerLib", 107 "hilt_android", 108 ], 109 110 jni_libs: [ 111 "librenderscript-toolkit", 112 ], 113 114 required: ["android.software.theme_picker.xml"], 115 116 use_embedded_native_libs: true, 117 118 optimize: { 119 enabled: false, 120 }, 121 kotlincflags: ["-Xjvm-default=all"], 122 certificate: "", 123 124 privileged: true, 125 system_ext_specific: true, 126} 127 128java_defaults { 129 name: "ThemePicker_defaults_with_overrides", 130 defaults: ["ThemePicker_defaults"], 131 static_libs: [ 132 "ThemePickerOverridesLib", 133 ], 134} 135 136prebuilt_etc { 137 name: "android.software.theme_picker.xml", 138 system_ext_specific: true, 139 sub_dir: "permissions", 140 src: "android.software.theme_picker.xml", 141} 142 143// 144// Build app code. 145// 146android_app { 147 name: "ThemePicker", 148 package_name: "com.android.wallpaper", 149 defaults: ["ThemePicker_defaults_with_overrides"], 150 151 platform_apis: true, 152 manifest: "AndroidManifest.xml", 153 additional_manifests: [":WallpaperPicker2_Manifest"], 154 overrides: ["WallpaperPicker", "WallpaperPicker2"], 155 static_libs: ["ThemePickerApplicationLib"], 156} 157