blob: b77c701c78e88598b7d5c69ba6f7febe0d988d59 [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.
sdk_version: "core_platform",
libs: [
// The order matters. android_system_* library should come later.
"framework_media_annotation",
"android_system_stubs_current",
],
static_libs: [
"exoplayer2-core"
],
jarjar_rules: "jarjar_rules.txt",
plugins: ["java_api_finder"],
}
filegroup {
name: "updatable-media-srcs",
srcs: [
":mediaparser-srcs",
":mediasession2-srcs",
],
}
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",
],
path: "apex/java",
}
filegroup {
name: "mediaparser-srcs",
srcs: [
"apex/java/android/media/MediaParser.java"
],
path: "apex/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",
":framework-media-annotation-srcs",
],
args: metalava_updatable_media_args,
aidl: {
// TODO(b/135922046) remove this
include_dirs: ["frameworks/base/core/java"],
},
sdk_version: "system_current",
}
java_library {
name: "updatable_media_stubs",
srcs: [":updatable-media-stubs"],
sdk_version: "system_current",
}
java_library {
name: "framework_media_annotation",
srcs: [":framework-media-annotation-srcs"],
installable: false,
}
aidl_interface {
name: "audio_common-aidl",
local_include_dir: "java",
srcs: [
"java/android/media/audio/common/AudioChannelMask.aidl",
"java/android/media/audio/common/AudioConfig.aidl",
"java/android/media/audio/common/AudioFormat.aidl",
"java/android/media/audio/common/AudioOffloadInfo.aidl",
"java/android/media/audio/common/AudioStreamType.aidl",
"java/android/media/audio/common/AudioUsage.aidl",
],
backend:
{
cpp: {
enabled: true,
},
java: {
// Already generated as part of the entire media java library.
enabled: false,
},
},
}