blob: 91df09865037381eb883784e7bbb03036f87c809 [file] [log] [blame]
// Copyright (C) 2020 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
java_library {
name: "updatable-media",
srcs: [
":updatable-media-srcs",
],
aidl: {
export_include_dirs: [
"java",
],
// It would be great if we don't need to add include_dirs for public
// parcelable classes. Find a better way.
include_dirs: [
// To refer:
// android.os.Bundle
// android.os.ResultReceiver
"frameworks/base/core/java",
],
},
permitted_packages: [
"android.media",
],
installable: true,
// TODO: build against stable API surface. Use core_platform for now to avoid
// link-check failure with exoplayer building against "current".
sdk_version: "core_platform",
libs: [
// The order matters. android_system_* library should come later.
"framework_media_annotation",
"android_system_stubs_current",
],
static_libs: [
"exoplayer2-extractor"
],
jarjar_rules: "jarjar_rules.txt",
plugins: ["java_api_finder"],
hostdex: true, // for hiddenapi check
visibility: ["//frameworks/av/apex:__subpackages__"],
apex_available: [
"com.android.media",
"test_com.android.media",
],
}
filegroup {
name: "updatable-media-srcs",
srcs: [
":mediaparser-srcs",
":mediasession2-srcs",
],
}
filegroup {
name: "mediasession2-srcs",
srcs: [
"java/android/media/Controller2Link.java",
"java/android/media/IMediaController2.aidl",
"java/android/media/IMediaSession2.aidl",
"java/android/media/IMediaSession2Service.aidl",
"java/android/media/MediaConstants.java",
"java/android/media/MediaController2.java",
"java/android/media/MediaSession2.java",
"java/android/media/MediaSession2Service.java",
"java/android/media/Session2Command.java",
"java/android/media/Session2CommandGroup.java",
"java/android/media/Session2Link.java",
"java/android/media/Session2Token.java",
],
path: "java",
}
filegroup {
name: "mediaparser-srcs",
srcs: [
"java/android/media/MediaParser.java"
],
path: "java"
}
stubs_defaults {
name: "framework-media-stubs-srcs-defaults",
srcs: [ ":updatable-media-srcs" ],
libs: [ "framework_media_annotation" ],
aidl: {
// TODO(b/135922046) remove this
include_dirs: ["frameworks/base/core/java"],
},
sdk_version: "system_current",
}
droidstubs {
name: "framework-media-stubs-srcs-publicapi",
defaults: [
"framework-media-stubs-srcs-defaults",
"framework-module-stubs-defaults-publicapi",
],
}
droidstubs {
name: "framework-media-stubs-srcs-systemapi",
defaults: [
"framework-media-stubs-srcs-defaults",
"framework-module-stubs-defaults-systemapi",
],
}
droidstubs {
name: "framework-media-api-module_libs_api",
defaults: [
"framework-media-stubs-srcs-defaults",
"framework-module-api-defaults-module_libs_api",
],
}
droidstubs {
name: "framework-media-stubs-srcs-module_libs_api",
defaults: [
"framework-media-stubs-srcs-defaults",
"framework-module-stubs-defaults-module_libs_api",
],
}
java_library {
name: "framework-media-stubs-publicapi",
srcs: [":framework-media-stubs-srcs-publicapi"],
sdk_version: "current",
}
java_library {
name: "framework-media-stubs-systemapi",
srcs: [":framework-media-stubs-srcs-systemapi"],
sdk_version: "system_current",
}
java_library {
name: "framework-media-stubs-module_libs_api",
srcs: [":framework-media-stubs-srcs-module_libs_api"],
sdk_version: "system_current",
}
java_library {
name: "framework_media_annotation",
srcs: [":framework-media-annotation-srcs"],
installable: false,
sdk_version: "core_current",
}