blob: ffd81d3c0abba1501ca2c6181f39bf5cb95c8d2d [file] [log] [blame]
java_library {
name: "updatable-media",
srcs: [
":updatable-media-srcs",
],
aidl: {
export_include_dirs: [
"apex/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,
// Make sure that the implementaion only relies on SDK or system APIs.
no_framework_libs: true,
libs: [
// The order matters. android_system_* library should come later.
"framework_media_annotation",
"android_system_stubs_current",
],
plugins: ["java_api_finder"],
}
filegroup {
name: "updatable-media-srcs",
srcs: [
":mediasession2-srcs",
],
}
filegroup {
name: "updatable-media-srcs-without-aidls",
srcs : [
":mediasession2-srcs-without-aidls",
],
}
filegroup {
name: "mediasession2-srcs",
srcs: [
"apex/java/android/media/Controller2Link.java",
"apex/java/android/media/IMediaController2.aidl",
"apex/java/android/media/IMediaSession2.aidl",
"apex/java/android/media/IMediaSession2Service.aidl",
"apex/java/android/media/MediaConstants.java",
"apex/java/android/media/MediaController2.java",
"apex/java/android/media/MediaSession2.java",
"apex/java/android/media/MediaSession2Service.java",
"apex/java/android/media/Session2Command.java",
"apex/java/android/media/Session2CommandGroup.java",
"apex/java/android/media/Session2Link.java",
"apex/java/android/media/Session2Token.java",
],
}
filegroup {
name: "mediasession2-srcs-without-aidls",
srcs: [
":mediasession2-srcs",
],
exclude_srcs: [
"apex/java/android/media/IMediaController2.aidl",
"apex/java/android/media/IMediaSession2.aidl",
"apex/java/android/media/IMediaSession2Service.aidl",
],
}
filegroup {
name: "mediaplayer2-srcs",
srcs: [
"apex/java/android/media/CloseGuard.java",
"apex/java/android/media/DataSourceCallback.java",
"apex/java/android/media/DataSourceDesc.java",
"apex/java/android/media/UriDataSourceDesc.java",
"apex/java/android/media/FileDataSourceDesc.java",
"apex/java/android/media/Media2Utils.java",
"apex/java/android/media/MediaPlayer2Utils.java",
"apex/java/android/media/MediaPlayer2.java",
"apex/java/android/media/Media2HTTPService.java",
"apex/java/android/media/Media2HTTPConnection.java",
"apex/java/android/media/RoutingDelegate.java",
"apex/java/android/media/BufferingParams.java",
"apex/java/android/media/ProxyDataSourceCallback.java",
],
}
metalava_updatable_media_args = " --error UnhiddenSystemApi " +
"--hide RequiresPermission " +
"--hide MissingPermission --hide BroadcastBehavior " +
"--hide HiddenSuperclass --hide DeprecationMismatch --hide UnavailableSymbol " +
"--hide SdkConstant --hide HiddenTypeParameter --hide Todo --hide Typo " +
"--hide HiddenTypedefConstant --show-annotation android.annotation.SystemApi "
droidstubs {
name: "updatable-media-stubs",
srcs: [
":updatable-media-srcs-without-aidls",
":framework-media-annotation-srcs",
],
args: metalava_updatable_media_args,
// Ideally, sdk_version here should be "current_system", but "current - 1" is used
// to avoid dependency cycle with framework.
sdk_version: "28",
}
java_library {
name: "updatable_media_stubs",
srcs: [":updatable-media-stubs"],
// Ideally, sdk_version here should be "current_system", but "current - 1" is used
// to avoid dependency cycle with framework.
sdk_version: "28",
}
java_library {
name: "framework_media_annotation",
srcs: [":framework-media-annotation-srcs"],
installable: false,
}