@@ -3130,8 +3130,7 @@ public PackageManagerService(Context context, Installer installer,
31303130
31313131 mWellbeingPackage = getWellbeingPackageName();
31323132 mDocumenterPackage = getDocumenterPackageName();
3133- mConfiguratorPackage =
3134- mContext.getString(R.string.config_deviceConfiguratorPackageName);
3133+ mConfiguratorPackage = getDeviceConfiguratorPackageName();
31353134 mAppPredictionServicePackage = getAppPredictionServicePackageName();
31363135 mIncidentReportApproverPackage = getIncidentReportApproverPackageName();
31373136
@@ -21121,7 +21120,8 @@ public void setHomeActivity(ComponentName comp, int userId) {
2112121120
2112221121 @Override
2112321122 public String getSystemTextClassifierPackageName() {
21124- return mContext.getString(R.string.config_defaultTextClassifierPackage);
21123+ return ensureSystemPackageName(mContext.getString(
21124+ R.string.config_defaultTextClassifierPackage));
2112521125 }
2112621126
2112721127 @Override
@@ -21131,7 +21131,7 @@ public String getSystemTextClassifierPackageName() {
2113121131 if (flattenedComponentName != null) {
2113221132 ComponentName componentName = ComponentName.unflattenFromString(flattenedComponentName);
2113321133 if (componentName != null && componentName.getPackageName() != null) {
21134- return componentName.getPackageName();
21134+ return ensureSystemPackageName( componentName.getPackageName() );
2113521135 }
2113621136 }
2113721137 return null;
@@ -21156,9 +21156,15 @@ public String getSystemTextClassifierPackageName() {
2115621156 }
2115721157 }
2115821158
21159+ @Nullable
21160+ private String getDeviceConfiguratorPackageName() {
21161+ return ensureSystemPackageName(mContext.getString(
21162+ R.string.config_deviceConfiguratorPackageName));
21163+ }
21164+
2115921165 @Override
2116021166 public String getWellbeingPackageName() {
21161- return mContext.getString(R.string.config_defaultWellbeingPackage);
21167+ return ensureSystemPackageName( mContext.getString(R.string.config_defaultWellbeingPackage) );
2116221168 }
2116321169
2116421170 @Override
@@ -21173,7 +21179,7 @@ public String getAppPredictionServicePackageName() {
2117321179 if (appPredictionServiceComponentName == null) {
2117421180 return null;
2117521181 }
21176- return appPredictionServiceComponentName.getPackageName();
21182+ return ensureSystemPackageName( appPredictionServiceComponentName.getPackageName() );
2117721183 }
2117821184
2117921185 @Override
@@ -21190,11 +21196,23 @@ public String getSystemCaptionsServicePackageName() {
2119021196 if (systemCaptionsServiceComponentName == null) {
2119121197 return null;
2119221198 }
21193- return systemCaptionsServiceComponentName.getPackageName();
21199+ return ensureSystemPackageName( systemCaptionsServiceComponentName.getPackageName() );
2119421200 }
2119521201
2119621202 public String getIncidentReportApproverPackageName() {
21197- return mContext.getString(R.string.config_incidentReportApproverPackage);
21203+ return ensureSystemPackageName(mContext.getString(
21204+ R.string.config_incidentReportApproverPackage));
21205+ }
21206+
21207+ @Nullable
21208+ private String ensureSystemPackageName(@Nullable String packageName) {
21209+ if (packageName == null) {
21210+ return null;
21211+ }
21212+ if (getPackageInfo(packageName, MATCH_FACTORY_ONLY, UserHandle.USER_SYSTEM) == null) {
21213+ return null;
21214+ }
21215+ return packageName;
2119821216 }
2119921217
2120021218 @Override
0 commit comments