TIF: build TvInput list at onUnlockUser

From N, apps cannot be accesible until onUnlockUser is called.
So the TvInput's list needs to be built at onUnlockUser.

Bug: 28586844
Change-Id: I84c896fa243c05c7e1f794863d8a83288549e6ff
diff --git a/services/core/java/com/android/server/tv/TvInputManagerService.java b/services/core/java/com/android/server/tv/TvInputManagerService.java
index b389cf5..7bf0cb2 100644
--- a/services/core/java/com/android/server/tv/TvInputManagerService.java
+++ b/services/core/java/com/android/server/tv/TvInputManagerService.java
@@ -157,6 +157,18 @@
         mTvInputHardwareManager.onBootPhase(phase);
     }
 
+    @Override
+    public void onUnlockUser(int userHandle) {
+        if (DEBUG) Slog.d(TAG, "onUnlockUser(userHandle=" + userHandle + ")");
+        synchronized (mLock) {
+            if (mCurrentUserId != userHandle) {
+                return;
+            }
+            buildTvInputListLocked(mCurrentUserId, null);
+            buildTvContentRatingSystemListLocked(mCurrentUserId);
+        }
+    }
+
     private void registerBroadcastReceivers() {
         PackageMonitor monitor = new PackageMonitor() {
             private void buildTvInputList(String[] packages) {