| 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/CallbackDataSourceDesc.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", |
| ], |
| } |
| |
| 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, |
| } |