diff --git a/api/current.txt b/api/current.txt
index 4dbd8ed2addb3..793566f682608 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -23025,6 +23025,7 @@ package android.media.tv {
method public boolean isRatingBlocked(android.media.tv.TvContentRating);
method public void registerCallback(android.media.tv.TvInputManager.TvInputCallback, android.os.Handler);
method public void unregisterCallback(android.media.tv.TvInputManager.TvInputCallback);
+ method public void updateTvInputInfo(android.media.tv.TvInputInfo);
field public static final java.lang.String ACTION_BLOCKED_RATINGS_CHANGED = "android.media.tv.action.BLOCKED_RATINGS_CHANGED";
field public static final java.lang.String ACTION_PARENTAL_CONTROLS_ENABLED_CHANGED = "android.media.tv.action.PARENTAL_CONTROLS_ENABLED_CHANGED";
field public static final java.lang.String ACTION_QUERY_CONTENT_RATING_SYSTEMS = "android.media.tv.action.QUERY_CONTENT_RATING_SYSTEMS";
@@ -23062,7 +23063,6 @@ package android.media.tv {
method public final android.os.IBinder onBind(android.content.Intent);
method public android.media.tv.TvInputService.RecordingSession onCreateRecordingSession(java.lang.String);
method public abstract android.media.tv.TvInputService.Session onCreateSession(java.lang.String);
- method public static final void updateTvInputInfo(android.content.Context, android.media.tv.TvInputInfo);
field public static final java.lang.String SERVICE_INTERFACE = "android.media.tv.TvInputService";
field public static final java.lang.String SERVICE_META_DATA = "android.media.tv.input";
}
diff --git a/api/system-current.txt b/api/system-current.txt
index c62726927b5c4..e38120480582d 100644
--- a/api/system-current.txt
+++ b/api/system-current.txt
@@ -24711,6 +24711,7 @@ package android.media.tv {
method public void removeBlockedRating(android.media.tv.TvContentRating);
method public void setParentalControlsEnabled(boolean);
method public void unregisterCallback(android.media.tv.TvInputManager.TvInputCallback);
+ method public void updateTvInputInfo(android.media.tv.TvInputInfo);
field public static final java.lang.String ACTION_BLOCKED_RATINGS_CHANGED = "android.media.tv.action.BLOCKED_RATINGS_CHANGED";
field public static final java.lang.String ACTION_PARENTAL_CONTROLS_ENABLED_CHANGED = "android.media.tv.action.PARENTAL_CONTROLS_ENABLED_CHANGED";
field public static final java.lang.String ACTION_QUERY_CONTENT_RATING_SYSTEMS = "android.media.tv.action.QUERY_CONTENT_RATING_SYSTEMS";
@@ -24765,7 +24766,6 @@ package android.media.tv {
method public java.lang.String onHardwareRemoved(android.media.tv.TvInputHardwareInfo);
method public android.media.tv.TvInputInfo onHdmiDeviceAdded(android.hardware.hdmi.HdmiDeviceInfo);
method public java.lang.String onHdmiDeviceRemoved(android.hardware.hdmi.HdmiDeviceInfo);
- method public static final void updateTvInputInfo(android.content.Context, android.media.tv.TvInputInfo);
field public static final java.lang.String SERVICE_INTERFACE = "android.media.tv.TvInputService";
field public static final java.lang.String SERVICE_META_DATA = "android.media.tv.input";
}
diff --git a/api/test-current.txt b/api/test-current.txt
index 51b31b924cbcc..8e562aee22ae0 100644
--- a/api/test-current.txt
+++ b/api/test-current.txt
@@ -23093,6 +23093,7 @@ package android.media.tv {
method public boolean isRatingBlocked(android.media.tv.TvContentRating);
method public void registerCallback(android.media.tv.TvInputManager.TvInputCallback, android.os.Handler);
method public void unregisterCallback(android.media.tv.TvInputManager.TvInputCallback);
+ method public void updateTvInputInfo(android.media.tv.TvInputInfo);
field public static final java.lang.String ACTION_BLOCKED_RATINGS_CHANGED = "android.media.tv.action.BLOCKED_RATINGS_CHANGED";
field public static final java.lang.String ACTION_PARENTAL_CONTROLS_ENABLED_CHANGED = "android.media.tv.action.PARENTAL_CONTROLS_ENABLED_CHANGED";
field public static final java.lang.String ACTION_QUERY_CONTENT_RATING_SYSTEMS = "android.media.tv.action.QUERY_CONTENT_RATING_SYSTEMS";
@@ -23130,7 +23131,6 @@ package android.media.tv {
method public final android.os.IBinder onBind(android.content.Intent);
method public android.media.tv.TvInputService.RecordingSession onCreateRecordingSession(java.lang.String);
method public abstract android.media.tv.TvInputService.Session onCreateSession(java.lang.String);
- method public static final void updateTvInputInfo(android.content.Context, android.media.tv.TvInputInfo);
field public static final java.lang.String SERVICE_INTERFACE = "android.media.tv.TvInputService";
field public static final java.lang.String SERVICE_META_DATA = "android.media.tv.input";
}
diff --git a/core/res/res/values/attrs.xml b/core/res/res/values/attrs.xml
index b85ed9c83857d..6af9ef2271fa1 100644
--- a/core/res/res/values/attrs.xml
+++ b/core/res/res/values/attrs.xml
@@ -8083,11 +8083,11 @@ i
android:targetSdkVersion.
*/
public static final int RECORDING_ERROR_UNKNOWN = 0;
@@ -1181,14 +1183,23 @@ public final class TvInputManager {
}
/**
- * Updates information about an existing TV input.
+ * Updates the TvInputInfo for an existing TV input. A TV input service
+ * implementation may call this method to pass the application and system an up-to-date
+ * TvInputInfo object that describes itself.
*
- *
This is called internally only by {@link TvInputService}. + *
The system automatically creates a TvInputInfo object for each TV input,
+ * based on the information collected from the AndroidManifest.xml, thus it is not
+ * necessary to call this method unless such information has changed dynamically.
+ * Use {@link TvInputInfo.Builder} to build a new TvInputInfo object.
+ *
+ *
Attempting to change information about a TV input that the calling package does not own
+ * does nothing.
*
* @param inputInfo The TvInputInfo object that contains new information.
* @throws IllegalArgumentException if the argument is {@code null}.
+ * @see TvInputCallback#onTvInputInfoUpdated(TvInputInfo)
*/
- void updateTvInputInfo(@NonNull TvInputInfo inputInfo) {
+ public void updateTvInputInfo(@NonNull TvInputInfo inputInfo) {
Preconditions.checkNotNull(inputInfo);
try {
mService.updateTvInputInfo(inputInfo, mUserId);
diff --git a/media/java/android/media/tv/TvInputService.java b/media/java/android/media/tv/TvInputService.java
index 21211d74b2462..7ae8da091adb2 100644
--- a/media/java/android/media/tv/TvInputService.java
+++ b/media/java/android/media/tv/TvInputService.java
@@ -256,31 +256,6 @@ public abstract class TvInputService extends Service {
return null;
}
- /**
- * Updates the TvInputInfo for an existing TV input. A TV input service
- * implementation may call this method to pass the application and system an up-to-date
- * TvInputInfo object that describes itself.
- *
- *
The system automatically creates a TvInputInfo object for each TV input,
- * based on the information collected from the AndroidManifest.xml, thus it is not
- * necessary to call this method unless such information has changed dynamically.
- * Use {@link TvInputInfo.Builder} to build a new TvInputInfo object.
- *
- *
Attempting to change information about a TV input that the calling package does not own
- * does nothing.
- *
- * @param context The application context.
- * @param inputInfo The TvInputInfo object that contains new information.
- * @see TvInputManager.TvInputCallback#onTvInputInfoUpdated(TvInputInfo)
- */
- public static final void updateTvInputInfo(Context context, TvInputInfo inputInfo) {
- TvInputManager manager = (TvInputManager) context.getSystemService(
- Context.TV_INPUT_SERVICE);
- if (manager != null) {
- manager.updateTvInputInfo(inputInfo);
- }
- }
-
private boolean isPassthroughInput(String inputId) {
if (mTvInputManager == null) {
mTvInputManager = (TvInputManager) getSystemService(Context.TV_INPUT_SERVICE);