From 5032604f36d191cce5c25636310e13467a9edb02 Mon Sep 17 00:00:00 2001 From: "jian.cui" Date: Tue, 4 Jan 2022 03:35:42 +0000 Subject: [PATCH] [TIAF] Fixed TIAS can not receive onTuned event Signed-off-by: jian.cui Change-Id: I07426b345c58dfb3bb62627bbc72ede2ac95fd87 --- .../java/android/media/tv/TvInputService.java | 18 ++++++++++++++++++ .../media/tv/interactive/TvIAppInfo.java | 1 + .../media/tv/interactive/TvIAppService.java | 13 +++++++++++++ 3 files changed, 32 insertions(+) diff --git a/media/java/android/media/tv/TvInputService.java b/media/java/android/media/tv/TvInputService.java index bd5a343963df7..3a40d6ff1fb40 100755 --- a/media/java/android/media/tv/TvInputService.java +++ b/media/java/android/media/tv/TvInputService.java @@ -592,6 +592,24 @@ public abstract class TvInputService extends Service { }); } + /** @hide */ + public void notifyTuned(@NonNull Uri channelUri) { + executeOrPostRunnableOnMainThread(new Runnable() { + @MainThread + @Override + public void run() { + try { + if (DEBUG) Log.d(TAG, "notifyTuned"); + if (mSessionCallback != null) { + mSessionCallback.onTuned(channelUri); + } + } catch (RemoteException e) { + Log.w(TAG, "error in notifyTuned", e); + } + } + }); + } + /** * Sends the list of all audio/video/subtitle tracks. The is used by the framework to * maintain the track information for a given session, which in turn is used by diff --git a/media/java/android/media/tv/interactive/TvIAppInfo.java b/media/java/android/media/tv/interactive/TvIAppInfo.java index 79d94cce77fe1..b5245fc0856ec 100644 --- a/media/java/android/media/tv/interactive/TvIAppInfo.java +++ b/media/java/android/media/tv/interactive/TvIAppInfo.java @@ -127,6 +127,7 @@ public final class TvIAppInfo implements Parcelable { /** * Gets supported interactive app types */ + @NonNull public List getSupportedTypes() { return new ArrayList<>(mTypes); } diff --git a/media/java/android/media/tv/interactive/TvIAppService.java b/media/java/android/media/tv/interactive/TvIAppService.java index 1480ff643d993..04560415ed378 100644 --- a/media/java/android/media/tv/interactive/TvIAppService.java +++ b/media/java/android/media/tv/interactive/TvIAppService.java @@ -113,6 +113,19 @@ public abstract class TvIAppService extends Service { public static final String IAPP_SERVICE_COMMAND_TYPE_SET_STREAM_VOLUME = "set_stream_volume"; /** @hide */ public static final String IAPP_SERVICE_COMMAND_TYPE_SELECT_TRACK = "select_track"; + /** @hide */ + public static final String COMMAND_PARAMETER_KEY_CHANNEL_URI = "command_channel_uri"; + /** @hide */ + public static final String COMMAND_PARAMETER_KEY_INPUT_ID = "command_input_id"; + /** @hide */ + public static final String COMMAND_PARAMETER_KEY_VOLUME = "command_volume"; + /** @hide */ + public static final String COMMAND_PARAMETER_KEY_TRACK_TYPE = "command_track_type"; + /** @hide */ + public static final String COMMAND_PARAMETER_KEY_TRACK_ID = "command_track_id"; + /** @hide */ + public static final String COMMAND_PARAMETER_KEY_TRACK_SELECT_MODE = + "command_track_select_mode"; private final Handler mServiceHandler = new ServiceHandler(); private final RemoteCallbackList mCallbacks =