Unhide setTvRecordingInfo

Bug: 261648703
Test: atest android.media.tv.interactive
Change-Id: Ib9e286a59615b1ec6677ae834ddc21fc2802fbad
This commit is contained in:
David Zhao
2023-01-19 18:05:33 -08:00
parent d021764c5a
commit a496ccded6
3 changed files with 37 additions and 4 deletions

View File

@@ -27406,6 +27406,7 @@ package android.media.tv.interactive {
method @CallSuper public void requestTrackInfoList();
method @CallSuper public void sendPlaybackCommandRequest(@NonNull String, @Nullable android.os.Bundle);
method @CallSuper public void setMediaViewEnabled(boolean);
method @CallSuper public void setTvRecordingInfo(@NonNull String, @NonNull android.media.tv.TvRecordingInfo);
method @CallSuper public void setVideoBounds(@NonNull android.graphics.Rect);
}
@@ -27480,6 +27481,7 @@ package android.media.tv.interactive {
method public void onRequestStopRecording(@NonNull String, @NonNull String);
method public void onRequestStreamVolume(@NonNull String);
method public void onRequestTrackInfoList(@NonNull String);
method public void onSetTvRecordingInfo(@NonNull String, @NonNull String, @NonNull android.media.tv.TvRecordingInfo);
method public void onSetVideoBounds(@NonNull String, @NonNull android.graphics.Rect);
method public void onStateChanged(@NonNull String, int, int);
method public void onTeletextAppStateChanged(@NonNull String, int);

View File

@@ -1219,13 +1219,15 @@ public abstract class TvInteractiveAppService extends Service {
}
/**
* Sets the recording info for the specified recording
* Sets the recording info for the specified recording.
*
* @hide
* @param recordingId The ID of the recording to set the info for. This is provided by the
* TV app in {@link TvInteractiveAppView#notifyRecordingStarted(String)}
* @param recordingInfo The {@link TvRecordingInfo} to set to the recording.
*/
@CallSuper
public void setTvRecordingInfo(@NonNull String recordingId,
@NonNull TvRecordingInfo recordingInfo) {
public void setTvRecordingInfo(
@NonNull String recordingId, @NonNull TvRecordingInfo recordingInfo) {
executeOrPostRunnableOnMainThread(() -> {
try {
if (DEBUG) {

View File

@@ -1055,6 +1055,20 @@ public class TvInteractiveAppView extends ViewGroup {
@NonNull String algorithm, @NonNull String alias, @NonNull byte[] data) {
}
/**
* This is called when {@link TvInteractiveAppService.Session#setTvRecordingInfo(String,
* TvRecordingInfo)} is called.
*
* @param iAppServiceId The ID of the TV interactive app service bound to this view.
* @param recordingId The ID of the recording to set the info for. This is provided by the
* TV app in {@link TvInteractiveAppView#notifyRecordingStarted(String)}
* @param recordingInfo The {@link TvRecordingInfo} to set to the recording.
*/
public void onSetTvRecordingInfo(
@NonNull String iAppServiceId,
@NonNull String recordingId,
@NonNull TvRecordingInfo recordingInfo) {
}
}
/**
@@ -1439,6 +1453,21 @@ public class TvInteractiveAppView extends ViewGroup {
}
}
@Override
public void onSetTvRecordingInfo(
Session session, String recordingId, TvRecordingInfo recordingInfo) {
if (DEBUG) {
Log.d(TAG, "onSetRecordingInfo");
}
if (this != mSessionCallback) {
Log.w(TAG, "onSetRecordingInfo - session not created");
return;
}
if (mCallback != null) {
mCallback.onSetTvRecordingInfo(mIAppServiceId, recordingId, recordingInfo);
}
}
@Override
public void onRequestSigning(
Session session, String id, String algorithm, String alias, byte[] data) {