Files
frameworks_base/media/Android.bp
Kun Niu 66a5871d68 add java_api_finder plugin to mainline module Media to generate java APIs used by Media.
Bug: 129294170
Test: m updatable-media RUN_ERROR_PRONE=true |& tee media_error_prone.out
Change-Id: I3cdfe5e00394c6ff7b9c857f63a5e45ac79f8d24
(cherry picked from commit 6eff1d439b)
Merged-In: I3cdfe5e00394c6ff7b9c857f63a5e45ac79f8d24
2019-10-04 00:45:18 +00:00

135 lines
4.0 KiB
Plaintext

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,
}