diff options
| author | 2018-04-04 11:28:21 +0900 | |
|---|---|---|
| committer | 2018-04-05 07:49:41 +0900 | |
| commit | 5dbcb8a6bb03791f89a2c02e5e91ff31ff841a7c (patch) | |
| tree | c2c5b4ba36463add37834e80bf7bcb68e94babe5 | |
| parent | dc4309544d67cdb242e6a818dd63afeb7a6ade93 (diff) | |
Load static RROs in OverlayManagerService
Only RROs targeting "android" are loaded from AssetManager, and so
others should be loaded from OverlayManagerService.
The RROs targeting "android" would be ingored as they are to avoid
redundant loading.
Bug: 76205654
Test: succeeded building and tested with taimen
Change-Id: Ibeeb3c3f3338a845b2f4c485305636003d9dbd44
| -rw-r--r-- | services/core/java/com/android/server/om/OverlayManagerSettings.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/om/OverlayManagerSettings.java b/services/core/java/com/android/server/om/OverlayManagerSettings.java index 863045c2aee7..e176351fcb76 100644 --- a/services/core/java/com/android/server/om/OverlayManagerSettings.java +++ b/services/core/java/com/android/server/om/OverlayManagerSettings.java @@ -179,15 +179,19 @@ final class OverlayManagerSettings { List<OverlayInfo> getOverlaysForTarget(@NonNull final String targetPackageName, final int userId) { + // Static RROs targeting "android" are loaded from AssetManager, and so they should be + // ignored in OverlayManagerService. return selectWhereTarget(targetPackageName, userId) - .filter((i) -> !i.isStatic()) + .filter((i) -> !(i.isStatic() && "android".equals(i.getTargetPackageName()))) .map(SettingsItem::getOverlayInfo) .collect(Collectors.toList()); } ArrayMap<String, List<OverlayInfo>> getOverlaysForUser(final int userId) { + // Static RROs targeting "android" are loaded from AssetManager, and so they should be + // ignored in OverlayManagerService. return selectWhereUser(userId) - .filter((i) -> !i.isStatic()) + .filter((i) -> !(i.isStatic() && "android".equals(i.getTargetPackageName()))) .map(SettingsItem::getOverlayInfo) .collect(Collectors.groupingBy(info -> info.targetPackageName, ArrayMap::new, Collectors.toList())); |