diff options
| -rw-r--r-- | packages/SettingsLib/src/com/android/settingslib/location/SettingsInjector.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/packages/SettingsLib/src/com/android/settingslib/location/SettingsInjector.java b/packages/SettingsLib/src/com/android/settingslib/location/SettingsInjector.java index 450bdb161933..a0c8663a8271 100644 --- a/packages/SettingsLib/src/com/android/settingslib/location/SettingsInjector.java +++ b/packages/SettingsLib/src/com/android/settingslib/location/SettingsInjector.java @@ -129,10 +129,14 @@ public class SettingsInjector { if (Log.isLoggable(TAG, Log.DEBUG)) { Log.d(TAG, "Found services for profile id " + profileId + ": " + resolveInfos); } + + final PackageManager userPackageManager = mContext.createContextAsUser( + userHandle, /* flags */ 0).getPackageManager(); List<InjectedSetting> settings = new ArrayList<InjectedSetting>(resolveInfos.size()); for (ResolveInfo resolveInfo : resolveInfos) { try { - InjectedSetting setting = parseServiceInfo(resolveInfo, userHandle, pm); + InjectedSetting setting = parseServiceInfo(resolveInfo, userHandle, + userPackageManager); if (setting == null) { Log.w(TAG, "Unable to load service info " + resolveInfo); } else { @@ -248,8 +252,7 @@ public class SettingsInjector { + SettingInjectorService.ATTRIBUTES_NAME + " tag"); } - Resources res = pm.getResourcesForApplicationAsUser(si.packageName, - userHandle.getIdentifier()); + Resources res = pm.getResourcesForApplication(si.packageName); return parseAttributes(si.packageName, si.name, userHandle, res, attrs); } catch (PackageManager.NameNotFoundException e) { throw new XmlPullParserException( |