blob: 57380a39023739b70605384d4401b96c67a247af [file] [log] [blame]
Bob Badour45b6e7d2021-02-12 18:09:33 -08001package {
Bob Badour19bda642022-01-27 18:29:56 -08002 // See: http://go/android-license-faq
3 default_applicable_licenses: ["Android-Apache-2.0"],
Bob Badour45b6e7d2021-02-12 18:09:33 -08004}
5
Jeff Sharkeyc55994b2019-12-20 19:43:59 -07006android_app {
7 name: "MediaProvider",
felkachang775842b2018-10-16 17:05:44 +08008 manifest: "AndroidManifest.xml",
9
Jeff Sharkeyb6781bc2019-07-18 18:45:52 -060010 static_libs: [
William Escande5ca7e762021-09-01 14:20:09 +020011 "modules-utils-backgroundthread",
Jeff Sharkeyb6781bc2019-07-18 18:45:52 -060012 "androidx.appcompat_appcompat",
Jeff Sharkey7ea24f22019-08-22 10:14:18 -060013 "androidx.core_core",
Ivan Chiangfe204ba2021-04-27 13:57:25 +080014 "androidx.legacy_legacy-support-core-ui",
Sahana Rao1e8923d2021-04-26 00:03:55 +010015 "androidx.lifecycle_lifecycle-extensions",
Ivan Chiangfe204ba2021-04-27 13:57:25 +080016 "androidx.recyclerview_recyclerview",
17 "com.google.android.material_material",
Jeff Sharkeycc5c31d2019-10-08 16:10:53 -060018 "guava",
Ivan Chiang7fce4a52021-01-25 16:53:54 +080019 "modules-utils-build",
Sahana Raoc70976a2021-06-20 13:24:20 +010020 "glide-prebuilt",
Biswarup Pald06af0b2021-08-25 20:05:41 +000021 "glide-gifdecoder-prebuilt",
22 "glide-disklrucache-prebuilt",
23 "glide-annotation-and-compiler-prebuilt",
Ivan Chiang0e3e5572021-09-02 16:12:15 +080024 "androidx.fragment_fragment",
25 "androidx.vectordrawable_vectordrawable-animated",
26 "androidx.exifinterface_exifinterface",
Sahana Rao4e366e62021-11-29 06:45:24 +000027 "exoplayer2.15.1",
Jeff Sharkeyb6781bc2019-07-18 18:45:52 -060028 ],
29
Artur Satayev2bb438d2020-01-23 15:26:14 +000030 libs: [
31 "unsupportedappusage",
atrostcee01812020-01-29 13:37:19 +000032 "app-compat-annotations",
Anton Hansson9258dba2021-03-30 13:38:15 +010033 "framework-annotations-lib",
Paul Duffina3b37862020-05-14 00:40:43 +010034 "framework-mediaprovider.impl",
Chong Zhangd3358642020-12-08 15:37:50 -080035 "framework-media.stubs.module_lib",
Paul Duffindc5abff2020-05-31 11:54:42 +010036 "framework-statsd",
Artur Satayev2bb438d2020-01-23 15:26:14 +000037 ],
38
Narayan Kamath88203dc2019-08-30 17:19:38 +010039 jni_libs: [
40 "libfuse_jni",
41 "libfuse"
42 ],
Zim3e45d9b2019-08-19 21:14:14 +010043
felkachang775842b2018-10-16 17:05:44 +080044 resource_dirs: [
45 "res",
46 ],
felkachang775842b2018-10-16 17:05:44 +080047 srcs: [
Jeff Sharkeyc55994b2019-12-20 19:43:59 -070048 ":mediaprovider-sources",
felkachang775842b2018-10-16 17:05:44 +080049 ],
50
Jeff Sharkey10b4d8d2019-02-04 21:53:22 -070051 optimize: {
Sahana Raod8455602022-01-13 08:31:09 +000052 shrink: true,
53 optimize: false,
54 obfuscate: false,
Jeff Sharkey10b4d8d2019-02-04 21:53:22 -070055 proguard_flags_files: ["proguard.flags"],
56 },
57
atrost2cf251d2019-10-10 19:32:30 +010058 plugins: [
Jeff Sharkey75b789d2019-10-30 10:24:44 -060059 "java_api_finder",
Jeff Sharkeyc4a5f812020-05-03 21:07:14 -060060 "error_prone_mediaprovider",
Biswarup Pald06af0b2021-08-25 20:05:41 +000061 "glide-annotation-processor",
atrost2cf251d2019-10-10 19:32:30 +010062 ],
63
Anton Hansson65958d02020-03-31 21:05:53 +010064 sdk_version: "module_current",
Nikita Ioffe0bf6f892020-11-03 22:58:11 +000065 min_sdk_version: "30",
felkachang775842b2018-10-16 17:05:44 +080066
67 certificate: "media",
felkachang775842b2018-10-16 17:05:44 +080068 privileged: true,
atrost2cf251d2019-10-10 19:32:30 +010069
Jeff Sharkey56c34e82019-11-21 15:56:37 -070070 aaptflags: ["--custom-package com.android.providers.media"],
Jeff Sharkeyb3e66032020-05-03 11:34:41 -060071
72 errorprone: {
73 javacflags: [
74 "-Xep:FallThrough:ERROR",
75 "-Xep:GuardedBy:ERROR",
76 "-Xep:StreamResourceLeak:ERROR",
Jeff Sharkeyc4a5f812020-05-03 21:07:14 -060077
78 // Local checkers specific to this module
79 "-Xep:MediaProviderLocaleRoot:ERROR",
80 "-Xep:MediaProviderMimeType:ERROR",
Jeff Sharkeyb3e66032020-05-03 11:34:41 -060081 ],
82 },
Saumya Pathak3054ea52021-03-09 22:14:22 +000083
84 required: ["preinstalled-packages-com.android.providers.media.module.xml"],
Corina Grigorasca99ec42021-07-20 10:22:44 +000085
86 lint: {
87 strict_updatability_linting: true,
88 },
Jeff Sharkey56c34e82019-11-21 15:56:37 -070089}
90
Anton Hansson65958d02020-03-31 21:05:53 +010091// Used by MediaProvider and MediaProviderTests
Jeff Sharkeyc55994b2019-12-20 19:43:59 -070092filegroup {
93 name: "mediaprovider-sources",
94 srcs: [
95 "src/**/*.aidl",
96 "src/**/*.java",
Jeff Sharkeyc55994b2019-12-20 19:43:59 -070097 ":statslog-mediaprovider-java-gen",
98 ],
99}
100
101// This is defined to give LegacyMediaProvider the bare minimum it needs
102// to keep the legacy database schema working while also building
103// against "system_current"
William Escande5ca7e762021-09-01 14:20:09 +0200104java_library {
105 name: "mediaprovider-database",
Jeff Sharkeyc55994b2019-12-20 19:43:59 -0700106 srcs: [
107 "src/com/android/providers/media/DatabaseHelper.java",
Jeff Sharkeyc55994b2019-12-20 19:43:59 -0700108 "src/com/android/providers/media/util/DatabaseUtils.java",
109 "src/com/android/providers/media/util/FileUtils.java",
Jeff Sharkeye04e2c62020-03-05 10:53:33 -0700110 "src/com/android/providers/media/util/ForegroundThread.java",
Jeff Sharkeyc55994b2019-12-20 19:43:59 -0700111 "src/com/android/providers/media/util/Logging.java",
Ivan Chiangbe571c92019-12-03 18:09:00 +0800112 "src/com/android/providers/media/util/MimeUtils.java",
Martijn Coenendb782022021-12-09 11:25:45 +0100113 "src/com/android/providers/media/util/StringUtils.java",
Sahana Rao9f4c1fa2020-09-09 15:06:04 +0100114 "src/com/android/providers/media/playlist/*.java",
Jeff Sharkeyc55994b2019-12-20 19:43:59 -0700115 ],
William Escande5ca7e762021-09-01 14:20:09 +0200116 sdk_version: "module_current",
117 min_sdk_version: "30",
118 static_libs: [
119 "modules-utils-backgroundthread",
120 "modules-utils-build",
121 "guava",
122 ],
123 libs: [
124 "androidx.annotation_annotation",
125 "framework-annotations-lib",
126 "framework-mediaprovider",
127 ],
Jeff Sharkeyc55994b2019-12-20 19:43:59 -0700128}
129
atrost2cf251d2019-10-10 19:32:30 +0100130platform_compat_config {
131 name: "media-provider-platform-compat-config",
132 src: ":MediaProvider",
133}
Jeff Sharkey3c0a6c62019-11-15 20:45:41 -0700134
135genrule {
136 name: "statslog-mediaprovider-java-gen",
137 tools: ["stats-log-api-gen"],
Muhammad Qureshi71b395e2020-12-11 14:59:11 -0800138 cmd: "$(location stats-log-api-gen) --java $(out) --module mediaprovider" +
139 " --javaPackage com.android.providers.media --javaClass MediaProviderStatsLog" +
140 " --minApiLevel 30",
Jeff Sharkey3c0a6c62019-11-15 20:45:41 -0700141 out: ["com/android/providers/media/MediaProviderStatsLog.java"],
142}
Saumya Pathak3054ea52021-03-09 22:14:22 +0000143
144prebuilt_etc {
145 name: "preinstalled-packages-com.android.providers.media.module.xml",
146 src: "preinstalled-packages-com.android.providers.media.module.xml",
147 sub_dir: "sysconfig",
148}
149