blob: 0c2b61cf5402ee59cd1d240e7296e09e48ba3199 [file] [log] [blame]
Sungsoo Lim420c2fc2019-12-20 07:41:58 +09001// Copyright (C) 2020 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15java_library {
16 name: "updatable-media",
17
18 srcs: [
19 ":updatable-media-srcs",
20 ],
21
22 aidl: {
23 export_include_dirs: [
24 "java",
25 ],
26
27 // It would be great if we don't need to add include_dirs for public
28 // parcelable classes. Find a better way.
29 include_dirs: [
30 // To refer:
31 // android.os.Bundle
32 // android.os.ResultReceiver
33 "frameworks/base/core/java",
34 ],
35 },
36
37 permitted_packages: [
38 "android.media",
39 ],
40
Santiago Seifert1b4a7f82020-01-29 20:31:34 +000041 optimize: {
42 enabled: true,
43 shrink: true,
44 proguard_flags_files: ["updatable-media-proguard.flags"],
45 },
46
Sungsoo Lim420c2fc2019-12-20 07:41:58 +090047 installable: true,
48
49 // TODO: build against stable API surface. Use core_platform for now to avoid
50 // link-check failure with exoplayer building against "current".
51 sdk_version: "core_platform",
52 libs: [
53 // The order matters. android_system_* library should come later.
54 "framework_media_annotation",
55 "android_system_stubs_current",
56 ],
57
58 static_libs: [
Santiago Seifert5b86f832020-01-27 19:42:27 +000059 "exoplayer2-extractor"
Sungsoo Lim420c2fc2019-12-20 07:41:58 +090060 ],
61 jarjar_rules: "jarjar_rules.txt",
62
63 plugins: ["java_api_finder"],
Jiyong Parkc81df3f2020-01-06 13:30:59 +090064
65 hostdex: true, // for hiddenapi check
66 visibility: ["//frameworks/av/apex:__subpackages__"],
67 apex_available: [
68 "com.android.media",
69 "test_com.android.media",
70 ],
Sungsoo Lim420c2fc2019-12-20 07:41:58 +090071}
72
73filegroup {
74 name: "updatable-media-srcs",
75 srcs: [
76 ":mediaparser-srcs",
77 ":mediasession2-srcs",
78 ],
79}
80
81filegroup {
82 name: "mediasession2-srcs",
83 srcs: [
84 "java/android/media/Controller2Link.java",
85 "java/android/media/IMediaController2.aidl",
86 "java/android/media/IMediaSession2.aidl",
87 "java/android/media/IMediaSession2Service.aidl",
88 "java/android/media/MediaConstants.java",
89 "java/android/media/MediaController2.java",
90 "java/android/media/MediaSession2.java",
91 "java/android/media/MediaSession2Service.java",
92 "java/android/media/Session2Command.java",
93 "java/android/media/Session2CommandGroup.java",
94 "java/android/media/Session2Link.java",
95 "java/android/media/Session2Token.java",
96 ],
97 path: "java",
98}
99
100filegroup {
101 name: "mediaparser-srcs",
102 srcs: [
103 "java/android/media/MediaParser.java"
104 ],
105 path: "java"
106}
107
108droidstubs {
109 name: "updatable-media-stubs",
110 srcs: [
111 ":updatable-media-srcs",
112 ":framework-media-annotation-srcs",
113 ],
114 defaults: [ "framework-module-stubs-defaults-systemapi" ],
115 aidl: {
116 // TODO(b/135922046) remove this
117 include_dirs: ["frameworks/base/core/java"],
118 },
119 sdk_version: "system_current",
120}
121
122java_library {
123 name: "updatable_media_stubs",
124 srcs: [":updatable-media-stubs"],
125 sdk_version: "system_current",
126}
127
128java_library {
129 name: "framework_media_annotation",
130 srcs: [":framework-media-annotation-srcs"],
131 installable: false,
132 sdk_version: "core_current",
133}