Relax Instant Apps Settings whitelist enforcement
The strict whitelist of settings for Instant Apps is leading to too much unintended breakage, remove the enforcement until better infrastructure can be added to make sure settings that should be whitelisted are. Bug: 71009655 Test: Coming in a follow up Change-Id: Ie089dc26cec87207515d15ba881e1a0aa49a9c51
This commit is contained in:
@@ -1687,18 +1687,9 @@ public class SettingsProvider extends ContentProvider {
|
||||
}
|
||||
|
||||
private List<String> getSettingsNamesLocked(int settingsType, int userId) {
|
||||
boolean instantApp;
|
||||
if (UserHandle.getAppId(Binder.getCallingUid()) < Process.FIRST_APPLICATION_UID) {
|
||||
instantApp = false;
|
||||
} else {
|
||||
ApplicationInfo ai = getCallingApplicationInfoOrThrow();
|
||||
instantApp = ai.isInstantApp();
|
||||
}
|
||||
if (instantApp) {
|
||||
return new ArrayList<String>(getInstantAppAccessibleSettings(settingsType));
|
||||
} else {
|
||||
return mSettingsRegistry.getSettingsNamesLocked(settingsType, userId);
|
||||
}
|
||||
// Don't enforce the instant app whitelist for now -- its too prone to unintended breakage
|
||||
// in the current form.
|
||||
return mSettingsRegistry.getSettingsNamesLocked(settingsType, userId);
|
||||
}
|
||||
|
||||
private void enforceSettingReadable(String settingName, int settingsType, int userId) {
|
||||
@@ -1711,8 +1702,10 @@ public class SettingsProvider extends ContentProvider {
|
||||
}
|
||||
if (!getInstantAppAccessibleSettings(settingsType).contains(settingName)
|
||||
&& !getOverlayInstantAppAccessibleSettings(settingsType).contains(settingName)) {
|
||||
throw new SecurityException("Setting " + settingName + " is not accessible from"
|
||||
+ " ephemeral package " + getCallingPackage());
|
||||
// Don't enforce the instant app whitelist for now -- its too prone to unintended
|
||||
// breakage in the current form.
|
||||
Slog.w(LOG_TAG, "Instant App " + ai.packageName
|
||||
+ " trying to access unexposed setting, this will be an error in the future.");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user