summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/app/ApplicationPackageManager.java19
-rw-r--r--core/java/android/content/pm/IPackageManager.aidl6
-rw-r--r--core/java/android/content/pm/PackageManager.java4
-rw-r--r--core/java/android/os/UserHandle.java12
-rw-r--r--core/java/android/os/storage/StorageManager.java2
5 files changed, 26 insertions, 17 deletions
diff --git a/core/java/android/app/ApplicationPackageManager.java b/core/java/android/app/ApplicationPackageManager.java
index 42b18384c588..0afca9d5dcc7 100644
--- a/core/java/android/app/ApplicationPackageManager.java
+++ b/core/java/android/app/ApplicationPackageManager.java
@@ -221,7 +221,7 @@ public class ApplicationPackageManager extends PackageManager {
public int[] getPackageGids(String packageName, int flags)
throws NameNotFoundException {
try {
- int[] gids = mPM.getPackageGidsEtc(packageName, flags, mContext.getUserId());
+ int[] gids = mPM.getPackageGids(packageName, flags, mContext.getUserId());
if (gids != null) {
return gids;
}
@@ -246,7 +246,7 @@ public class ApplicationPackageManager extends PackageManager {
public int getPackageUidAsUser(String packageName, int flags, int userId)
throws NameNotFoundException {
try {
- int uid = mPM.getPackageUidEtc(packageName, flags, userId);
+ int uid = mPM.getPackageUid(packageName, flags, userId);
if (uid >= 0) {
return uid;
}
@@ -314,8 +314,14 @@ public class ApplicationPackageManager extends PackageManager {
@Override
public ApplicationInfo getApplicationInfo(String packageName, int flags)
throws NameNotFoundException {
+ return getApplicationInfoAsUser(packageName, flags, mContext.getUserId());
+ }
+
+ @Override
+ public ApplicationInfo getApplicationInfoAsUser(String packageName, int flags, int userId)
+ throws NameNotFoundException {
try {
- ApplicationInfo ai = mPM.getApplicationInfo(packageName, flags, mContext.getUserId());
+ ApplicationInfo ai = mPM.getApplicationInfo(packageName, flags, userId);
if (ai != null) {
// This is a temporary hack. Callers must use
// createPackageContext(packageName).getApplicationInfo() to
@@ -352,7 +358,6 @@ public class ApplicationPackageManager extends PackageManager {
}
}
-
@Override
public ActivityInfo getActivityInfo(ComponentName className, int flags)
throws NameNotFoundException {
@@ -1169,8 +1174,10 @@ public class ApplicationPackageManager extends PackageManager {
throw new NameNotFoundException("Package " + appPackageName + " doesn't exist");
}
- int mCachedSafeMode = -1;
- @Override public boolean isSafeMode() {
+ volatile int mCachedSafeMode = -1;
+
+ @Override
+ public boolean isSafeMode() {
try {
if (mCachedSafeMode < 0) {
mCachedSafeMode = mPM.isSafeMode() ? 1 : 0;
diff --git a/core/java/android/content/pm/IPackageManager.aidl b/core/java/android/content/pm/IPackageManager.aidl
index 39f59554c1df..f6119917c994 100644
--- a/core/java/android/content/pm/IPackageManager.aidl
+++ b/core/java/android/content/pm/IPackageManager.aidl
@@ -64,10 +64,8 @@ interface IPackageManager {
void checkPackageStartable(String packageName, int userId);
boolean isPackageAvailable(String packageName, int userId);
PackageInfo getPackageInfo(String packageName, int flags, int userId);
- int getPackageUid(String packageName, int userId);
- int getPackageUidEtc(String packageName, int flags, int userId);
- int[] getPackageGids(String packageName, int userId);
- int[] getPackageGidsEtc(String packageName, int flags, int userId);
+ int getPackageUid(String packageName, int flags, int userId);
+ int[] getPackageGids(String packageName, int flags, int userId);
String[] currentToCanonicalPackageNames(in String[] names);
String[] canonicalToCurrentPackageNames(in String[] names);
diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java
index a364c18b5390..78f5908adb6c 100644
--- a/core/java/android/content/pm/PackageManager.java
+++ b/core/java/android/content/pm/PackageManager.java
@@ -2541,6 +2541,10 @@ public abstract class PackageManager {
public abstract ApplicationInfo getApplicationInfo(String packageName,
@ApplicationInfoFlags int flags) throws NameNotFoundException;
+ /** {@hide} */
+ public abstract ApplicationInfo getApplicationInfoAsUser(String packageName,
+ @ApplicationInfoFlags int flags, @UserIdInt int userId) throws NameNotFoundException;
+
/**
* Retrieve all of the information we know about a particular activity
* class.
diff --git a/core/java/android/os/UserHandle.java b/core/java/android/os/UserHandle.java
index 867d0b963cda..bcc12139b5e4 100644
--- a/core/java/android/os/UserHandle.java
+++ b/core/java/android/os/UserHandle.java
@@ -33,13 +33,13 @@ public final class UserHandle implements Parcelable {
public static final int PER_USER_RANGE = 100000;
/** @hide A user id to indicate all users on the device */
- public static final int USER_ALL = -1;
+ public static final @UserIdInt int USER_ALL = -1;
/** @hide A user handle to indicate all users on the device */
public static final UserHandle ALL = new UserHandle(USER_ALL);
/** @hide A user id to indicate the currently active user */
- public static final int USER_CURRENT = -2;
+ public static final @UserIdInt int USER_CURRENT = -2;
/** @hide A user handle to indicate the current user of the device */
public static final UserHandle CURRENT = new UserHandle(USER_CURRENT);
@@ -47,7 +47,7 @@ public final class UserHandle implements Parcelable {
/** @hide A user id to indicate that we would like to send to the current
* user, but if this is calling from a user process then we will send it
* to the caller's user instead of failing with a security exception */
- public static final int USER_CURRENT_OR_SELF = -3;
+ public static final @UserIdInt int USER_CURRENT_OR_SELF = -3;
/** @hide A user handle to indicate that we would like to send to the current
* user, but if this is calling from a user process then we will send it
@@ -55,14 +55,14 @@ public final class UserHandle implements Parcelable {
public static final UserHandle CURRENT_OR_SELF = new UserHandle(USER_CURRENT_OR_SELF);
/** @hide An undefined user id */
- public static final int USER_NULL = -10000;
+ public static final @UserIdInt int USER_NULL = -10000;
/**
* @hide A user id constant to indicate the "owner" user of the device
* @deprecated Consider using either {@link UserHandle#USER_SYSTEM} constant or
* check the target user's flag {@link android.content.pm.UserInfo#isAdmin}.
*/
- public static final int USER_OWNER = 0;
+ public static final @UserIdInt int USER_OWNER = 0;
/**
* @hide A user handle to indicate the primary/owner user of the device
@@ -72,7 +72,7 @@ public final class UserHandle implements Parcelable {
public static final UserHandle OWNER = new UserHandle(USER_OWNER);
/** @hide A user id constant to indicate the "system" user of the device */
- public static final int USER_SYSTEM = 0;
+ public static final @UserIdInt int USER_SYSTEM = 0;
/** @hide A user handle to indicate the "system" user of the device */
public static final UserHandle SYSTEM = new UserHandle(USER_SYSTEM);
diff --git a/core/java/android/os/storage/StorageManager.java b/core/java/android/os/storage/StorageManager.java
index 49d41cfaf997..c8b942bb27de 100644
--- a/core/java/android/os/storage/StorageManager.java
+++ b/core/java/android/os/storage/StorageManager.java
@@ -882,7 +882,7 @@ public class StorageManager {
}
packageName = packageNames[0];
}
- final int uid = ActivityThread.getPackageManager().getPackageUidEtc(packageName,
+ final int uid = ActivityThread.getPackageManager().getPackageUid(packageName,
PackageManager.MATCH_DEBUG_TRIAGED_MISSING, userId);
if (uid <= 0) {
return new StorageVolume[0];