diff options
author | Adam Lesinski <adamlesinski@google.com> | 2014-10-07 12:14:45 -0700 |
---|---|---|
committer | Adam Lesinski <adamlesinski@google.com> | 2014-10-07 12:14:45 -0700 |
commit | d00bb5edcfc8ee5c2026f66785b703b388314b22 (patch) | |
tree | 8eca016216872e5aaf34f33e690b83ca96d619aa /services | |
parent | a80aba70728c2843df94474dbd7829dadb77855f (diff) | |
download | frameworks_base-d00bb5edcfc8ee5c2026f66785b703b388314b22.zip frameworks_base-d00bb5edcfc8ee5c2026f66785b703b388314b22.tar.gz frameworks_base-d00bb5edcfc8ee5c2026f66785b703b388314b22.tar.bz2 |
Load shared library dependencies for AppWidgets
PackageManager and AppWidgetHostServiceImpl should
be loading the resources of any shared libraries being
used by the app, as they have references in their Widgets
or application icons/labels, etc.
Bug:17668152
Change-Id: I359662334edb125d7570089916727df4eeba02bb
Diffstat (limited to 'services')
-rw-r--r-- | services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java b/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java index 86cfdb9..fca13f8 100644 --- a/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java +++ b/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java @@ -2207,9 +2207,15 @@ class AppWidgetServiceImpl extends IAppWidgetService.Stub implements WidgetBacku private List<ResolveInfo> queryIntentReceivers(Intent intent, int userId) { final long identity = Binder.clearCallingIdentity(); try { + int flags = PackageManager.GET_META_DATA; + + // Widgets referencing shared libraries need to have their + // dependencies loaded. + flags |= PackageManager.GET_SHARED_LIBRARY_FILES; + return mPackageManager.queryIntentReceivers(intent, intent.resolveTypeIfNeeded(mContext.getContentResolver()), - PackageManager.GET_META_DATA, userId); + flags, userId); } catch (RemoteException re) { return Collections.emptyList(); } finally { |