summaryrefslogtreecommitdiffstats
path: root/core/java/android/content
diff options
context:
space:
mode:
Diffstat (limited to 'core/java/android/content')
-rw-r--r--core/java/android/content/Context.java10
-rw-r--r--core/java/android/content/ContextWrapper.java5
-rw-r--r--core/java/android/content/pm/IPackageManager.aidl6
-rw-r--r--core/java/android/content/pm/PackageManager.java16
-rw-r--r--core/java/android/content/pm/PackageUserState.java3
5 files changed, 39 insertions, 1 deletions
diff --git a/core/java/android/content/Context.java b/core/java/android/content/Context.java
index f0c6ce8..bd7868f 100644
--- a/core/java/android/content/Context.java
+++ b/core/java/android/content/Context.java
@@ -2267,6 +2267,16 @@ public abstract class Context {
public static final String USER_SERVICE = "user";
/**
+ * Determine whether the application or calling application has
+ * privacy guard. This is a privacy feature intended to permit the user
+ * to control access to personal data. Applications and content providers
+ * can check this value if they wish to honor privacy guard.
+ *
+ * @hide
+ */
+ public abstract boolean isPrivacyGuardEnabled();
+
+ /**
* Determine whether the given permission is allowed for a particular
* process and user ID running in the system.
*
diff --git a/core/java/android/content/ContextWrapper.java b/core/java/android/content/ContextWrapper.java
index 84ad667..3f61075 100644
--- a/core/java/android/content/ContextWrapper.java
+++ b/core/java/android/content/ContextWrapper.java
@@ -496,6 +496,11 @@ public class ContextWrapper extends Context {
}
@Override
+ public boolean isPrivacyGuardEnabled() {
+ return mBase.isPrivacyGuardEnabled();
+ }
+
+ @Override
public int checkPermission(String permission, int pid, int uid) {
return mBase.checkPermission(permission, pid, uid);
}
diff --git a/core/java/android/content/pm/IPackageManager.aidl b/core/java/android/content/pm/IPackageManager.aidl
index d6a78ea..a5accc6 100644
--- a/core/java/android/content/pm/IPackageManager.aidl
+++ b/core/java/android/content/pm/IPackageManager.aidl
@@ -212,7 +212,11 @@ interface IPackageManager {
int getPreferredActivities(out List<IntentFilter> outFilters,
out List<ComponentName> outActivities, String packageName);
-
+
+ boolean getPrivacyGuardSetting(in String packageName, int userId);
+
+ void setPrivacyGuardSetting(in String packageName, boolean enabled, int userId);
+
/**
* As per {@link android.content.pm.PackageManager#setComponentEnabledSetting}.
*/
diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java
index eb6e640..28d60c8 100644
--- a/core/java/android/content/pm/PackageManager.java
+++ b/core/java/android/content/pm/PackageManager.java
@@ -2941,6 +2941,22 @@ public abstract class PackageManager {
public abstract int getApplicationEnabledSetting(String packageName);
/**
+ * @param packageName
+ * @return
+ *
+ * @hide
+ */
+ public abstract boolean getPrivacyGuardSetting(String packageName);
+
+ /**
+ * @param packageName
+ * @param enabled
+ *
+ * @hide
+ */
+ public abstract void setPrivacyGuardSetting(String packageName, boolean enabled);
+
+ /**
* Return whether the device has been booted into safe mode.
*/
public abstract boolean isSafeMode();
diff --git a/core/java/android/content/pm/PackageUserState.java b/core/java/android/content/pm/PackageUserState.java
index 3579977..91ef1bc 100644
--- a/core/java/android/content/pm/PackageUserState.java
+++ b/core/java/android/content/pm/PackageUserState.java
@@ -29,6 +29,7 @@ public class PackageUserState {
public boolean notLaunched;
public boolean installed;
public int enabled;
+ public boolean privacyGuard;
public HashSet<String> disabledComponents;
public HashSet<String> enabledComponents;
@@ -36,6 +37,7 @@ public class PackageUserState {
public PackageUserState() {
installed = true;
enabled = COMPONENT_ENABLED_STATE_DEFAULT;
+ privacyGuard = false;
}
public PackageUserState(PackageUserState o) {
@@ -43,6 +45,7 @@ public class PackageUserState {
stopped = o.stopped;
notLaunched = o.notLaunched;
enabled = o.enabled;
+ privacyGuard = o.privacyGuard;
disabledComponents = o.disabledComponents != null
? new HashSet<String>(o.disabledComponents) : null;
enabledComponents = o.enabledComponents != null