Merge "Add null check for resolveInfo and Automotive feature." into rvc-dev am: 97c9d1f8b2

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/12114119

Change-Id: Ie06b73832660f21369b55ba02ce5414b91230223
This commit is contained in:
Youngjun Kwak
2020-07-10 20:55:39 +00:00
committed by Automerger Merge Worker

View File

@@ -228,6 +228,7 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
private final Context mContext; private final Context mContext;
private final boolean mIsPrimaryUser; private final boolean mIsPrimaryUser;
private final boolean mIsAutomotive;
private final StatusBarStateController mStatusBarStateController; private final StatusBarStateController mStatusBarStateController;
HashMap<Integer, SimData> mSimDatas = new HashMap<>(); HashMap<Integer, SimData> mSimDatas = new HashMap<>();
HashMap<Integer, ServiceState> mServiceStates = new HashMap<Integer, ServiceState>(); HashMap<Integer, ServiceState> mServiceStates = new HashMap<Integer, ServiceState>();
@@ -1770,6 +1771,8 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
mFaceManager.addLockoutResetCallback(mFaceLockoutResetCallback); mFaceManager.addLockoutResetCallback(mFaceLockoutResetCallback);
} }
mIsAutomotive = isAutomotive();
ActivityManagerWrapper.getInstance().registerTaskStackListener(mTaskStackListener); ActivityManagerWrapper.getInstance().registerTaskStackListener(mTaskStackListener);
mUserManager = context.getSystemService(UserManager.class); mUserManager = context.getSystemService(UserManager.class);
mIsPrimaryUser = mUserManager.isPrimaryUser(); mIsPrimaryUser = mUserManager.isPrimaryUser();
@@ -2484,6 +2487,14 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
.addCategory(Intent.CATEGORY_HOME); .addCategory(Intent.CATEGORY_HOME);
ResolveInfo resolveInfo = mContext.getPackageManager().resolveActivity(homeIntent, ResolveInfo resolveInfo = mContext.getPackageManager().resolveActivity(homeIntent,
0 /* flags */); 0 /* flags */);
// TODO(b/160971249): Replace in the future by resolving activity as user.
if (resolveInfo == null && mIsAutomotive) {
Log.w(TAG, "resolveNeedsSlowUnlockTransition: returning false since activity "
+ "could not be resolved.");
return false;
}
return FALLBACK_HOME_COMPONENT.equals(resolveInfo.getComponentInfo().getComponentName()); return FALLBACK_HOME_COMPONENT.equals(resolveInfo.getComponentInfo().getComponentName());
} }
@@ -2554,6 +2565,10 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
return false; return false;
} }
private boolean isAutomotive() {
return mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_AUTOMOTIVE);
}
/** /**
* Remove the given observer's callback. * Remove the given observer's callback.
* *
@@ -2990,5 +3005,8 @@ public class KeyguardUpdateMonitor implements TrustManager.TrustListener, Dumpab
pw.println(" " + time + " " + model.toString()); pw.println(" " + time + " " + model.toString());
} }
} }
if (mIsAutomotive) {
pw.println(" Running on Automotive build");
}
} }
} }