| 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", | |
| ], | |
| }, | |
| static_libs: [ | |
| "mediaplayer2-protos", | |
| ], | |
| 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", | |
| ], | |
| } | |
| filegroup { | |
| name: "updatable-media-srcs", | |
| srcs: [ | |
| ":mediasession2-srcs", | |
| ":mediaplayer2-srcs", | |
| ], | |
| } | |
| filegroup { | |
| name: "updatable-media-srcs-without-aidls", | |
| srcs : [ | |
| ":mediasession2-srcs-without-aidls", | |
| ":mediaplayer2-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/MediaItem2.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 " + | |
| " --show-annotation android.annotation.TestApi " | |
| 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, | |
| } |