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// 18// Build rule for WallpaperPicker2 dependencies lib. 19// 20package { 21 default_applicable_licenses: ["Android-Apache-2.0"], 22} 23 24android_library { 25 name: "WallpaperPicker2Lib", 26 platform_apis: true, 27 28 static_libs: [ 29 "androidx.activity_activity-ktx", 30 "androidx.appcompat_appcompat", 31 "androidx.cardview_cardview", 32 "androidx-constraintlayout_constraintlayout", 33 "androidx.exifinterface_exifinterface", 34 "androidx.lifecycle_lifecycle-livedata-ktx", 35 "androidx.lifecycle_lifecycle-runtime-ktx", 36 "androidx.recyclerview_recyclerview", 37 "androidx.slice_slice-view", 38 "androidx.transition_transition-ktx", 39 "androidx.viewpager2_viewpager2", 40 "androidx.navigation_navigation-ui-ktx", 41 "androidx.navigation_navigation-fragment-ktx", 42 "com.google.android.material_material", 43 "com_android_wallpaper_flags_lib", 44 "glide-prebuilt", 45 "glide-gifdecoder-prebuilt", 46 "glide-disklrucache-prebuilt", 47 "kotlinx-coroutines-android", 48 "kotlinx-coroutines-core", 49 "libbackup", 50 "SettingsLibCollapsingToolbarBaseActivity", 51 "SettingsLibSettingsTheme", 52 "subsampling-scale-image-view", 53 "SystemUISharedLib", 54 "SystemUICustomizationLib", 55 "volley", 56 "SettingsLibActivityEmbedding", 57 "monet", 58 "android-support-v7-recyclerview", 59 "flexbox", 60 "hilt_android", 61 "accessibility_settings_flags_lib", 62 // Compose 63 "PlatformComposeCore", 64 "androidx.activity_activity-compose", 65 "androidx.compose.foundation_foundation", 66 "androidx.compose.foundation_foundation-layout", 67 "androidx.compose.material3_material3", 68 "androidx.compose.runtime_runtime", 69 "androidx.compose.ui_ui", 70 "androidx.compose.ui_ui-tooling", 71 "androidx.lifecycle_lifecycle-runtime-compose", 72 "androidx.lifecycle_lifecycle-viewmodel-compose", 73 "grpc-java-api", 74 "grpc-java-protobuf-lite", 75 "grpc-java-context", 76 "grpc-java-core", 77 "grpc-java-core-util", 78 "grpc-java-core-internal", 79 "grpc-java-stub", 80 "grpc-java-binder", 81 ], 82 83 resource_dirs: [ 84 "res", 85 "res_override", 86 ], 87 88 srcs: [ 89 "src/**/*.java", 90 "src/**/*.kt", 91 ], 92 93 optimize: { 94 enabled: false, 95 }, 96 97 kotlincflags: ["-Xjvm-default=all"], 98 99 manifest: "AndroidManifest-empty.xml", 100 101 visibility: [ 102 ":__subpackages__", 103 "//packages/apps/ThemePicker:__subpackages__", 104 "//vendor:__subpackages__", 105 ], 106} 107 108// Production-only files that should be excluded in tests. 109filegroup { 110 name: "WallpaperPicker2_src_prod", 111 visibility: [":__subpackages__"], 112 srcs: ["src_override/com/android/wallpaper/picker/WallpapersApplication.java"], 113} 114 115java_library { 116 name: "WallpaperPicker2OverridesLib", 117 srcs: [ 118 "src_override/**/*.java", 119 "src_override/**/*.kt", 120 ], 121 exclude_srcs: [ 122 ":WallpaperPicker2_src_prod", 123 ], 124 libs: [ 125 "WallpaperPicker2Lib", 126 "hilt_android", 127 ], 128} 129 130java_library { 131 name: "WallpaperPicker2ApplicationLib", 132 srcs: [":WallpaperPicker2_src_prod"], 133 libs: [ 134 "WallpaperPicker2Lib", 135 "WallpaperPicker2OverridesLib", 136 "hilt_android", 137 ], 138} 139 140filegroup { 141 name: "WallpaperPicker2_Manifest", 142 srcs: [ 143 "AndroidManifest.xml", 144 ], 145} 146 147java_defaults { 148 name: "WallpaperPicker2_defaults", 149 150 certificate: "", 151 152 optimize: { 153 enabled: false, 154 }, 155 156 kotlincflags: ["-Xjvm-default=all"], 157 privileged: true, 158 system_ext_specific: true, 159 160 use_embedded_native_libs: true, 161 162 static_libs: [ 163 "WallpaperPicker2Lib", 164 "hilt_android", 165 ], 166} 167 168java_defaults { 169 name: "WallpaperPicker2_defaults_with_overrides", 170 defaults: ["WallpaperPicker2_defaults"], 171 172 static_libs: [ 173 "WallpaperPicker2OverridesLib", 174 ], 175} 176 177// 178// Build app code. 179// 180android_app { 181 name: "WallpaperPicker2", 182 package_name: "com.android.wallpaper", 183 184 defaults: ["WallpaperPicker2_defaults_with_overrides"], 185 manifest: ":WallpaperPicker2_Manifest", 186 187 platform_apis: true, 188 overrides: ["WallpaperPicker"], 189 static_libs: ["WallpaperPicker2ApplicationLib"], 190} 191