diff options
16 files changed, 52 insertions, 25 deletions
diff --git a/core/api/current.txt b/core/api/current.txt index 34b4acc361e1..5dc10433bcfd 100644 --- a/core/api/current.txt +++ b/core/api/current.txt @@ -26195,12 +26195,12 @@ package android.media.tv.interactive { method public void onBroadcastInfoResponse(@NonNull android.media.tv.BroadcastInfoResponse); method public void onContentAllowed(); method public void onContentBlocked(@NonNull android.media.tv.TvContentRating); - method public void onCreateBiInteractiveApp(@NonNull android.net.Uri, @Nullable android.os.Bundle); + method public void onCreateBiInteractiveAppRequest(@NonNull android.net.Uri, @Nullable android.os.Bundle); method @Nullable public android.view.View onCreateMediaView(); method public void onCurrentChannelLcn(int); method public void onCurrentChannelUri(@Nullable android.net.Uri); method public void onCurrentTvInputId(@Nullable String); - method public void onDestroyBiInteractiveApp(@NonNull String); + method public void onDestroyBiInteractiveAppRequest(@NonNull String); method public boolean onGenericMotionEvent(@NonNull android.view.MotionEvent); method public boolean onKeyDown(int, @NonNull android.view.KeyEvent); method public boolean onKeyLongPress(int, @NonNull android.view.KeyEvent); @@ -26285,6 +26285,8 @@ package android.media.tv.interactive { method public void stopInteractiveApp(); field public static final String BI_INTERACTIVE_APP_KEY_ALIAS = "alias"; field public static final String BI_INTERACTIVE_APP_KEY_CERTIFICATE = "certificate"; + field public static final String BI_INTERACTIVE_APP_KEY_HTTP_ADDITIONAL_HEADERS = "http_additional_headers"; + field public static final String BI_INTERACTIVE_APP_KEY_HTTP_USER_AGENT = "http_user_agent"; field public static final String BI_INTERACTIVE_APP_KEY_PRIVATE_KEY = "private_key"; } diff --git a/media/java/android/media/tv/AdRequest.java b/media/java/android/media/tv/AdRequest.java index 0542c5598c01..f2fb93d803a8 100644 --- a/media/java/android/media/tv/AdRequest.java +++ b/media/java/android/media/tv/AdRequest.java @@ -163,7 +163,11 @@ public final class AdRequest implements Parcelable { /** * Gets the metadata of the media file. - * <p>This includes additional information the TV input needs to play the AD media. + * + * <p>This includes additional information the TV input needs to play the AD media. This may + * include fields in {@link android.media.MediaFormat} like + * {@link android.media.MediaFormat#KEY_SAMPLE_RATE}, or integrity information like SHA. What + * data is included depends on the format of the media file. * * @return The metadata of the media file. Can be an empty bundle for * {@link #REQUEST_TYPE_STOP}. diff --git a/media/java/android/media/tv/interactive/AppLinkInfo.aidl b/media/java/android/media/tv/interactive/AppLinkInfo.aidl index 6759fc499e1c..f551c9fcf6c7 100644 --- a/media/java/android/media/tv/interactive/AppLinkInfo.aidl +++ b/media/java/android/media/tv/interactive/AppLinkInfo.aidl @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The Android Open Source Project + * Copyright 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/media/java/android/media/tv/interactive/AppLinkInfo.java b/media/java/android/media/tv/interactive/AppLinkInfo.java index 0eb6fa8996d6..3c3905d6c77f 100644 --- a/media/java/android/media/tv/interactive/AppLinkInfo.java +++ b/media/java/android/media/tv/interactive/AppLinkInfo.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The Android Open Source Project + * Copyright 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/media/java/android/media/tv/interactive/ITvInteractiveAppClient.aidl b/media/java/android/media/tv/interactive/ITvInteractiveAppClient.aidl index c8c6f66aa0ed..50aa6febacf7 100644 --- a/media/java/android/media/tv/interactive/ITvInteractiveAppClient.aidl +++ b/media/java/android/media/tv/interactive/ITvInteractiveAppClient.aidl @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The Android Open Source Project + * Copyright 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/media/java/android/media/tv/interactive/ITvInteractiveAppManager.aidl b/media/java/android/media/tv/interactive/ITvInteractiveAppManager.aidl index eb012721445c..b8f4c699ca21 100644 --- a/media/java/android/media/tv/interactive/ITvInteractiveAppManager.aidl +++ b/media/java/android/media/tv/interactive/ITvInteractiveAppManager.aidl @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The Android Open Source Project + * Copyright 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/media/java/android/media/tv/interactive/ITvInteractiveAppManagerCallback.aidl b/media/java/android/media/tv/interactive/ITvInteractiveAppManagerCallback.aidl index f410c0fac488..fed86dc9e0a8 100644 --- a/media/java/android/media/tv/interactive/ITvInteractiveAppManagerCallback.aidl +++ b/media/java/android/media/tv/interactive/ITvInteractiveAppManagerCallback.aidl @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The Android Open Source Project + * Copyright 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/media/java/android/media/tv/interactive/ITvInteractiveAppService.aidl b/media/java/android/media/tv/interactive/ITvInteractiveAppService.aidl index b6d518ff7242..224a6f2dfe99 100644 --- a/media/java/android/media/tv/interactive/ITvInteractiveAppService.aidl +++ b/media/java/android/media/tv/interactive/ITvInteractiveAppService.aidl @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The Android Open Source Project + * Copyright 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/media/java/android/media/tv/interactive/ITvInteractiveAppServiceCallback.aidl b/media/java/android/media/tv/interactive/ITvInteractiveAppServiceCallback.aidl index 970b94327572..87b3c1df6197 100644 --- a/media/java/android/media/tv/interactive/ITvInteractiveAppServiceCallback.aidl +++ b/media/java/android/media/tv/interactive/ITvInteractiveAppServiceCallback.aidl @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The Android Open Source Project + * Copyright 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/media/java/android/media/tv/interactive/ITvInteractiveAppSession.aidl b/media/java/android/media/tv/interactive/ITvInteractiveAppSession.aidl index c784b09e87fc..e14b2bb18ea6 100644 --- a/media/java/android/media/tv/interactive/ITvInteractiveAppSession.aidl +++ b/media/java/android/media/tv/interactive/ITvInteractiveAppSession.aidl @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The Android Open Source Project + * Copyright 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/media/java/android/media/tv/interactive/ITvInteractiveAppSessionCallback.aidl b/media/java/android/media/tv/interactive/ITvInteractiveAppSessionCallback.aidl index f74b2bac957b..32b08b7042fe 100644 --- a/media/java/android/media/tv/interactive/ITvInteractiveAppSessionCallback.aidl +++ b/media/java/android/media/tv/interactive/ITvInteractiveAppSessionCallback.aidl @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The Android Open Source Project + * Copyright 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/media/java/android/media/tv/interactive/TvInteractiveAppManager.java b/media/java/android/media/tv/interactive/TvInteractiveAppManager.java index 702832ccb3ca..00792efc2427 100755 --- a/media/java/android/media/tv/interactive/TvInteractiveAppManager.java +++ b/media/java/android/media/tv/interactive/TvInteractiveAppManager.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The Android Open Source Project + * Copyright 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/media/java/android/media/tv/interactive/TvInteractiveAppService.java b/media/java/android/media/tv/interactive/TvInteractiveAppService.java index 15144f82e52c..c2a89d35e826 100755 --- a/media/java/android/media/tv/interactive/TvInteractiveAppService.java +++ b/media/java/android/media/tv/interactive/TvInteractiveAppService.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The Android Open Source Project + * Copyright 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -407,9 +407,10 @@ public abstract class TvInteractiveAppService extends Service { * no matter if it's created successfully or not. * * @see #notifyBiInteractiveAppCreated(Uri, String) - * @see #onDestroyBiInteractiveApp(String) + * @see #onDestroyBiInteractiveAppRequest(String) */ - public void onCreateBiInteractiveApp(@NonNull Uri biIAppUri, @Nullable Bundle params) { + public void onCreateBiInteractiveAppRequest( + @NonNull Uri biIAppUri, @Nullable Bundle params) { } @@ -417,11 +418,11 @@ public abstract class TvInteractiveAppService extends Service { * Destroys broadcast-independent(BI) interactive application. * * @param biIAppId the BI interactive app ID from - * {@link #onCreateBiInteractiveApp(Uri, Bundle)}} + * {@link #onCreateBiInteractiveAppRequest(Uri, Bundle)} * - * @see #onCreateBiInteractiveApp(Uri, Bundle) + * @see #onCreateBiInteractiveAppRequest(Uri, Bundle) */ - public void onDestroyBiInteractiveApp(@NonNull String biIAppId) { + public void onDestroyBiInteractiveAppRequest(@NonNull String biIAppId) { } /** @@ -978,11 +979,11 @@ public abstract class TvInteractiveAppService extends Service { } void createBiInteractiveApp(@NonNull Uri biIAppUri, @Nullable Bundle params) { - onCreateBiInteractiveApp(biIAppUri, params); + onCreateBiInteractiveAppRequest(biIAppUri, params); } void destroyBiInteractiveApp(@NonNull String biIAppId) { - onDestroyBiInteractiveApp(biIAppId); + onDestroyBiInteractiveAppRequest(biIAppId); } void setTeletextAppEnabled(boolean enable) { @@ -1142,7 +1143,7 @@ public abstract class TvInteractiveAppService extends Service { * @param biIAppId BI interactive app ID, which can be used to destroy the BI interactive * app. {@code null} if it's not created successfully. * - * @see #onCreateBiInteractiveApp(Uri, Bundle) + * @see #onCreateBiInteractiveAppRequest(Uri, Bundle) */ @CallSuper public final void notifyBiInteractiveAppCreated( diff --git a/media/java/android/media/tv/interactive/TvInteractiveAppServiceInfo.aidl b/media/java/android/media/tv/interactive/TvInteractiveAppServiceInfo.aidl index 49600a05cb7f..4b6127c01d1e 100644 --- a/media/java/android/media/tv/interactive/TvInteractiveAppServiceInfo.aidl +++ b/media/java/android/media/tv/interactive/TvInteractiveAppServiceInfo.aidl @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The Android Open Source Project + * Copyright 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/media/java/android/media/tv/interactive/TvInteractiveAppServiceInfo.java b/media/java/android/media/tv/interactive/TvInteractiveAppServiceInfo.java index 9c1b2425c013..4370f7097268 100644 --- a/media/java/android/media/tv/interactive/TvInteractiveAppServiceInfo.java +++ b/media/java/android/media/tv/interactive/TvInteractiveAppServiceInfo.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The Android Open Source Project + * Copyright 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/media/java/android/media/tv/interactive/TvInteractiveAppView.java b/media/java/android/media/tv/interactive/TvInteractiveAppView.java index 9154de008d7a..1df757b2d9d7 100755 --- a/media/java/android/media/tv/interactive/TvInteractiveAppView.java +++ b/media/java/android/media/tv/interactive/TvInteractiveAppView.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The Android Open Source Project + * Copyright 2021 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -83,6 +83,19 @@ public class TvInteractiveAppView extends ViewGroup { * @see java.security.PrivateKey */ public static final String BI_INTERACTIVE_APP_KEY_PRIVATE_KEY = "private_key"; + /** + * Additional HTTP headers to be used by {@link TvInteractiveAppService} to load the + * broadcast-independent interactive application. + * @see #createBiInteractiveApp(Uri, Bundle) + */ + public static final String BI_INTERACTIVE_APP_KEY_HTTP_ADDITIONAL_HEADERS = + "http_additional_headers"; + /** + * HTTP user agent to be used by {@link TvInteractiveAppService} for broadcast-independent + * interactive application. + * @see #createBiInteractiveApp(Uri, Bundle) + */ + public static final String BI_INTERACTIVE_APP_KEY_HTTP_USER_AGENT = "http_user_agent"; private final TvInteractiveAppManager mTvInteractiveAppManager; private final Handler mHandler = new Handler(); @@ -595,7 +608,14 @@ public class TvInteractiveAppView extends ViewGroup { * <p>{@link TvInteractiveAppCallback#onBiInteractiveAppCreated(String, Uri, String)} will be * called for the result. * + * @param biIAppUri URI associated this BI interactive app. + * @param params optional parameters for broadcast-independent interactive application, such as + * {@link #BI_INTERACTIVE_APP_KEY_CERTIFICATE}. + * * @see TvInteractiveAppCallback#onBiInteractiveAppCreated(String, Uri, String) + * @see #BI_INTERACTIVE_APP_KEY_CERTIFICATE + * @see #BI_INTERACTIVE_APP_KEY_HTTP_ADDITIONAL_HEADERS + * @see #BI_INTERACTIVE_APP_KEY_HTTP_USER_AGENT */ public void createBiInteractiveApp(@NonNull Uri biIAppUri, @Nullable Bundle params) { if (DEBUG) { |