diff --git a/CHANGELOG.md b/CHANGELOG.md index 33611d6bc..bf05654af 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,6 +25,7 @@ Changelog * Added restriction *Srv_getAccountsForPackage* * Added account type parameter for *Srv_getAccounts* and *Srv_getAccountsAsUser* * Check external storage directory for *open* restriction ([issue](/../../issues/1757)) +* Added restriction *getInstalledProvidersForProfile* ([issue](/../../issues/1757)) [Open issues](https://github.com/M66B/XPrivacy/issues?state=open) diff --git a/res/values/functions.xml b/res/values/functions.xml index 381a6b820..61299eee5 100644 --- a/res/values/functions.xml +++ b/res/values/functions.xml @@ -368,6 +368,7 @@ Google documentation]]> Google documentation]]> Google documentation]]> + Google documentation]]> Google documentation]]> Google documentation]]> Google documentation]]> diff --git a/src/biz/bokhorst/xprivacy/Meta.java b/src/biz/bokhorst/xprivacy/Meta.java index ef0b94f96..a915965c5 100644 --- a/src/biz/bokhorst/xprivacy/Meta.java +++ b/src/biz/bokhorst/xprivacy/Meta.java @@ -434,6 +434,7 @@ public static List get() { mListHook.add(new Hook("system", "Srv_queryIntentServices", "", 19, "2.99", "queryIntentServices").AOSP(19).dangerous()); mListHook.add(new Hook("system", "getInstalledProviders", "", 3, null, null).notAOSP(19).dangerous()); + mListHook.add(new Hook("system", "getInstalledProvidersForProfile", "", 21, "3.5.6", null).notAOSP(21).dangerous()); mListHook.add(new Hook("system", "Srv_getInstalledProviders", "", 3, "2.99", "getInstalledProviders").AOSP(19).dangerous()); mListHook.add(new Hook("system", "getRecentTasks", "GET_TASKS", 1, null, null).notAOSP(19).dangerous()); diff --git a/src/biz/bokhorst/xprivacy/XAppWidgetManager.java b/src/biz/bokhorst/xprivacy/XAppWidgetManager.java index 264d94920..9120f4044 100644 --- a/src/biz/bokhorst/xprivacy/XAppWidgetManager.java +++ b/src/biz/bokhorst/xprivacy/XAppWidgetManager.java @@ -25,6 +25,7 @@ public String getClassName() { // @formatter:off // public List getInstalledProviders() + // public List getInstalledProvidersForProfile(UserHandle profile) // frameworks/base/core/java/android/appwidget/AppWidgetManager.java // http://developer.android.com/reference/android/appwidget/AppWidgetManager.html @@ -34,12 +35,13 @@ public String getClassName() { // @formatter:on private enum Methods { - getInstalledProviders, Srv_getInstalledProviders + getInstalledProviders, getInstalledProvidersForProfile, Srv_getInstalledProviders }; public static List getInstances() { List listHook = new ArrayList(); listHook.add(new XAppWidgetManager(Methods.getInstalledProviders, PrivacyManager.cSystem)); + listHook.add(new XAppWidgetManager(Methods.getInstalledProvidersForProfile, PrivacyManager.cSystem)); listHook.add(new XAppWidgetManager(Methods.Srv_getInstalledProviders, PrivacyManager.cSystem)); return listHook; } @@ -53,6 +55,7 @@ protected void before(XParam param) throws Throwable { protected void after(XParam param) throws Throwable { switch (mMethod) { case getInstalledProviders: + case getInstalledProvidersForProfile: case Srv_getInstalledProviders: if (param.getResult() != null) if (isRestricted(param))