diff --git a/res/values/functions.xml b/res/values/functions.xml index fd9bae42f..b440dfe4c 100644 --- a/res/values/functions.xml +++ b/res/values/functions.xml @@ -394,6 +394,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 e40411e2b..c96334e1b 100644 --- a/src/biz/bokhorst/xprivacy/Meta.java +++ b/src/biz/bokhorst/xprivacy/Meta.java @@ -467,7 +467,8 @@ public static List get() { 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", "Srv_getInstalledProviders", "", 3, "2.99", "getInstalledProviders").AOSP(19).to(19).dangerous()); + mListHook.add(new Hook("system", "Srv_getInstalledProvidersForProfile", "", 3, "3.6.6", null).AOSP(21).dangerous()); mListHook.add(new Hook("system", "getRecentTasks", "GET_TASKS", 1, null, null).notAOSP(19).dangerous()); mListHook.add(new Hook("system", "getRunningAppProcesses", "", 3, null, null).notAOSP(19).dangerous()); diff --git a/src/biz/bokhorst/xprivacy/XAppWidgetManager.java b/src/biz/bokhorst/xprivacy/XAppWidgetManager.java index 9120f4044..70930c2fc 100644 --- a/src/biz/bokhorst/xprivacy/XAppWidgetManager.java +++ b/src/biz/bokhorst/xprivacy/XAppWidgetManager.java @@ -4,6 +4,7 @@ import java.util.List; import android.appwidget.AppWidgetProviderInfo; +import android.os.Build; public class XAppWidgetManager extends XHook { private Methods mMethod; @@ -13,7 +14,10 @@ private XAppWidgetManager(Methods method, String restrictionName) { super(restrictionName, method.name().replace("Srv_", ""), method.name()); mMethod = method; if (method.name().startsWith("Srv_")) - mClassName = "com.android.server.AppWidgetService"; + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) + mClassName = "com.android.server.appwidget.AppWidgetServiceImpl"; + else + mClassName = "com.android.server.AppWidgetService"; else mClassName = "android.appwidget.AppWidgetManager"; } @@ -35,7 +39,7 @@ public String getClassName() { // @formatter:on private enum Methods { - getInstalledProviders, getInstalledProvidersForProfile, Srv_getInstalledProviders + getInstalledProviders, getInstalledProvidersForProfile, Srv_getInstalledProviders, Srv_getInstalledProvidersForProfile }; public static List getInstances() { @@ -43,6 +47,7 @@ public static List getInstances() { 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)); + listHook.add(new XAppWidgetManager(Methods.Srv_getInstalledProvidersForProfile, PrivacyManager.cSystem)); return listHook; } @@ -57,6 +62,7 @@ protected void after(XParam param) throws Throwable { case getInstalledProviders: case getInstalledProvidersForProfile: case Srv_getInstalledProviders: + case Srv_getInstalledProvidersForProfile: if (param.getResult() != null) if (isRestricted(param)) param.setResult(new ArrayList());