OSDN Git Service

TIF: Make all the parameters for UNRATED null
authorJae Seo <jaeseo@google.com>
Tue, 5 May 2015 20:18:17 +0000 (13:18 -0700)
committerJae Seo <jaeseo@google.com>
Tue, 5 May 2015 22:48:06 +0000 (15:48 -0700)
UNRATED is equivalent to Java null in its meaning and usage, thus it is
not appropriate to use non-trivial strings such as "com.android.tv" and
"UNRATED" to create this constant. Replaced them with the string "null",
which is commonly used in other parts of Android and also modified the
documentation to clarify its usage.

Bug: 19102311
Change-Id: I28ac8da3584eb2cc6dfd7284e2b88873fd4e9d13

media/java/android/media/tv/TvContentRating.java
media/java/android/media/tv/TvInputManager.java
media/java/android/media/tv/TvInputService.java

index daeb1cc..043b80e 100644 (file)
@@ -783,10 +783,15 @@ public final class TvContentRating {
     private final int mHashCode;
 
     /**
-     * Rating constant denoting unrated content.
+     * Rating constant denoting unrated content. Used to handle the case where the content rating
+     * information is missing.
+     *
+     * <p>TV input services can call {@link TvInputManager#isRatingBlocked} with this constant to
+     * determine whether they should block unrated content. The subsequent call to
+     * {@link TvInputService.Session#notifyContentBlocked} with the same constant notifies
+     * applications that the current program content is blocked by parental controls.
      */
-    public static final TvContentRating UNRATED = new TvContentRating("com.android.tv", "",
-            "UNRATED", null);
+    public static final TvContentRating UNRATED = new TvContentRating("null", "null", "null", null);
 
     /**
      * Creates a {@code TvContentRating} object with predefined content rating strings.
index 3272a23..dca0631 100644 (file)
@@ -1035,7 +1035,7 @@ public final class TvInputManager {
     /**
      * Checks whether a given TV content rating is blocked by the user.
      *
-     * @param rating The TV content rating to check.
+     * @param rating The TV content rating to check. Can be {@link TvContentRating#UNRATED}.
      * @return {@code true} if the given TV content rating is blocked, {@code false} otherwise.
      */
     public boolean isRatingBlocked(@NonNull TvContentRating rating) {
index 34c36c3..c1035b0 100644 (file)
@@ -528,11 +528,12 @@ public abstract class TvInputService extends Service {
          * TvInputManager.isParentalControlsEnabled()} returns {@code true}). Whether the TV input
          * service should block the content or not is determined by invoking
          * {@link TvInputManager#isRatingBlocked TvInputManager.isRatingBlocked(TvContentRating)}
-         * with the content rating for the current program. Then the {@link TvInputManager} makes a
-         * judgment based on the user blocked ratings stored in the secure settings and returns the
-         * result. If the rating in question turns out to be blocked, the TV input service must
-         * immediately block the content and call this method with the content rating of the current
-         * program to prompt the PIN verification screen.
+         * with the content rating for the current program or {@link TvContentRating#UNRATED} in
+         * case the rating information is missing. Then the {@link TvInputManager} makes a judgment
+         * based on the user blocked ratings stored in the secure settings and returns the result.
+         * If the rating in question turns out to be blocked, the TV input service must immediately
+         * block the content and call this method with the content rating of the current program to
+         * prompt the PIN verification screen.
          *
          * <p>Each TV input service also needs to continuously listen to any changes made to the
          * parental controls settings by registering a broadcast receiver to receive
@@ -540,7 +541,8 @@ public abstract class TvInputService extends Service {
          * {@link TvInputManager#ACTION_PARENTAL_CONTROLS_ENABLED_CHANGED} and immediately
          * reevaluate the current program with the new parental controls settings.
          *
-         * @param rating The content rating for the current TV program.
+         * @param rating The content rating for the current TV program. Can be
+         *            {@link TvContentRating#UNRATED}.
          * @see #notifyContentAllowed
          * @see TvInputManager
          */