diff options
| author | Peter Wang <tpwang@google.com> | 2020-01-24 08:15:38 +0800 |
|---|---|---|
| committer | Peter Wang <tpwang@google.com> | 2020-01-24 09:22:25 +0800 |
| commit | 09014f10482fa6300e80a4bbb51d7f404129bc06 (patch) | |
| tree | dbab85d655fe198e9150f22801896f531b87e72d /core/java/android | |
| parent | 4a58806789a85978f6a4abeb7236ba091d0aa960 (diff) | |
[Telephony Mainline] Remove hidden API usages in CarrierAppUtils
Bug: 146904426
Test: Build
Change-Id: Ib307e565b85e7d9a142efc7e3348b823dc46643d
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/app/ApplicationPackageManager.java | 58 | ||||
| -rw-r--r-- | core/java/android/content/pm/PackageManager.java | 49 | ||||
| -rw-r--r-- | core/java/android/os/TelephonyServiceManager.java | 8 | ||||
| -rw-r--r-- | core/java/android/permission/PermissionManager.java | 24 |
4 files changed, 112 insertions, 27 deletions
diff --git a/core/java/android/app/ApplicationPackageManager.java b/core/java/android/app/ApplicationPackageManager.java index 4e6319db97f4..c09aa1ff05a8 100644 --- a/core/java/android/app/ApplicationPackageManager.java +++ b/core/java/android/app/ApplicationPackageManager.java @@ -131,7 +131,7 @@ public class ApplicationPackageManager extends PackageManager { private static final int DEFAULT_EPHEMERAL_COOKIE_MAX_SIZE_BYTES = 16384; // 16KB // Default flags to use with PackageManager when no flags are given. - private final static int sDefaultFlags = PackageManager.GET_SHARED_LIBRARY_FILES; + private static final int sDefaultFlags = GET_SHARED_LIBRARY_FILES; // Name of the resource which provides background permission button string public static final String APP_PERMISSION_BUTTON_ALLOW_ALWAYS = @@ -907,7 +907,7 @@ public class ApplicationPackageManager extends PackageManager { @Override public boolean hasSigningCertificate( - String packageName, byte[] certificate, @PackageManager.CertificateInputType int type) { + String packageName, byte[] certificate, @CertificateInputType int type) { try { return mPM.hasSigningCertificate(packageName, certificate, type); } catch (RemoteException e) { @@ -917,7 +917,7 @@ public class ApplicationPackageManager extends PackageManager { @Override public boolean hasSigningCertificate( - int uid, byte[] certificate, @PackageManager.CertificateInputType int type) { + int uid, byte[] certificate, @CertificateInputType int type) { try { return mPM.hasUidSigningCertificate(uid, certificate, type); } catch (RemoteException e) { @@ -1464,8 +1464,7 @@ public class ApplicationPackageManager extends PackageManager { return getActivityIcon(intent.getComponent()); } - ResolveInfo info = resolveActivity( - intent, PackageManager.MATCH_DEFAULT_ONLY); + ResolveInfo info = resolveActivity(intent, MATCH_DEFAULT_ONLY); if (info != null) { return info.activityInfo.loadIcon(this); } @@ -1500,7 +1499,7 @@ public class ApplicationPackageManager extends PackageManager { } ResolveInfo info = resolveActivity( - intent, PackageManager.MATCH_DEFAULT_ONLY); + intent, MATCH_DEFAULT_ONLY); if (info != null) { return info.activityInfo.loadBanner(this); } @@ -1532,8 +1531,7 @@ public class ApplicationPackageManager extends PackageManager { return getActivityLogo(intent.getComponent()); } - ResolveInfo info = resolveActivity( - intent, PackageManager.MATCH_DEFAULT_ONLY); + ResolveInfo info = resolveActivity(intent, MATCH_DEFAULT_ONLY); if (info != null) { return info.activityInfo.loadLogo(this); } @@ -2017,7 +2015,7 @@ public class ApplicationPackageManager extends PackageManager { @Override public int installExistingPackage(String packageName) throws NameNotFoundException { - return installExistingPackage(packageName, PackageManager.INSTALL_REASON_UNKNOWN); + return installExistingPackage(packageName, INSTALL_REASON_UNKNOWN); } @Override @@ -2029,7 +2027,7 @@ public class ApplicationPackageManager extends PackageManager { @Override public int installExistingPackageAsUser(String packageName, int userId) throws NameNotFoundException { - return installExistingPackageAsUser(packageName, PackageManager.INSTALL_REASON_UNKNOWN, + return installExistingPackageAsUser(packageName, INSTALL_REASON_UNKNOWN, userId); } @@ -2404,7 +2402,7 @@ public class ApplicationPackageManager extends PackageManager { public void deletePackageAsUser(String packageName, IPackageDeleteObserver observer, int flags, int userId) { try { - mPM.deletePackageAsUser(packageName, PackageManager.VERSION_CODE_HIGHEST, + mPM.deletePackageAsUser(packageName, VERSION_CODE_HIGHEST, observer, userId, flags); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); @@ -2651,11 +2649,11 @@ public class ApplicationPackageManager extends PackageManager { public void setSyntheticAppDetailsActivityEnabled(String packageName, boolean enabled) { try { ComponentName componentName = new ComponentName(packageName, - PackageManager.APP_DETAILS_ACTIVITY_CLASS_NAME); + APP_DETAILS_ACTIVITY_CLASS_NAME); mPM.setComponentEnabledSetting(componentName, enabled - ? PackageManager.COMPONENT_ENABLED_STATE_DEFAULT - : PackageManager.COMPONENT_ENABLED_STATE_DISABLED, - PackageManager.DONT_KILL_APP, getUserId()); + ? COMPONENT_ENABLED_STATE_DEFAULT + : COMPONENT_ENABLED_STATE_DISABLED, + DONT_KILL_APP, getUserId()); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } @@ -2665,10 +2663,10 @@ public class ApplicationPackageManager extends PackageManager { public boolean getSyntheticAppDetailsActivityEnabled(String packageName) { try { ComponentName componentName = new ComponentName(packageName, - PackageManager.APP_DETAILS_ACTIVITY_CLASS_NAME); + APP_DETAILS_ACTIVITY_CLASS_NAME); int state = mPM.getComponentEnabledSetting(componentName, getUserId()); - return state == PackageManager.COMPONENT_ENABLED_STATE_ENABLED - || state == PackageManager.COMPONENT_ENABLED_STATE_DEFAULT; + return state == COMPONENT_ENABLED_STATE_ENABLED + || state == COMPONENT_ENABLED_STATE_DEFAULT; } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } @@ -2744,6 +2742,30 @@ public class ApplicationPackageManager extends PackageManager { /** @hide */ @Override + public void setSystemAppState(String packageName, @SystemAppState int state) { + try { + switch (state) { + case SYSTEM_APP_STATE_HIDDEN_UNTIL_INSTALLED_HIDDEN: + mPM.setSystemAppHiddenUntilInstalled(packageName, true); + break; + case SYSTEM_APP_STATE_HIDDEN_UNTIL_INSTALLED_VISIBLE: + mPM.setSystemAppHiddenUntilInstalled(packageName, false); + break; + case SYSTEM_APP_STATE_INSTALLED: + mPM.setSystemAppInstallState(packageName, true, getUserId()); + break; + case SYSTEM_APP_STATE_UNINSTALLED: + mPM.setSystemAppInstallState(packageName, false, getUserId()); + break; + default: + } + } catch (RemoteException e) { + throw e.rethrowFromSystemServer(); + } + } + + /** @hide */ + @Override public KeySet getKeySetByAlias(String packageName, String alias) { Objects.requireNonNull(packageName); Objects.requireNonNull(alias); diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java index 205617022aa1..948ce39a8f0b 100644 --- a/core/java/android/content/pm/PackageManager.java +++ b/core/java/android/content/pm/PackageManager.java @@ -3517,6 +3517,44 @@ public abstract class PackageManager { public static final long FILTER_APPLICATION_QUERY = 135549675L; /** {@hide} */ + @IntDef(prefix = {"SYSTEM_APP_STATE_"}, value = { + SYSTEM_APP_STATE_HIDDEN_UNTIL_INSTALLED_HIDDEN, + SYSTEM_APP_STATE_HIDDEN_UNTIL_INSTALLED_VISIBLE, + SYSTEM_APP_STATE_INSTALLED, + SYSTEM_APP_STATE_UNINSTALLED + }) + @Retention(RetentionPolicy.SOURCE) + public @interface SystemAppState {} + + /** + * Constant for noting system app state as hidden before installation + * @hide + */ + @SystemApi + public static final int SYSTEM_APP_STATE_HIDDEN_UNTIL_INSTALLED_HIDDEN = 0; + + /** + * Constant for noting system app state as visible before installation + * @hide + */ + @SystemApi + public static final int SYSTEM_APP_STATE_HIDDEN_UNTIL_INSTALLED_VISIBLE = 1; + + /** + * Constant for noting system app state as installed + * @hide + */ + @SystemApi + public static final int SYSTEM_APP_STATE_INSTALLED = 2; + + /** + * Constant for noting system app state as not installed + * @hide + */ + @SystemApi + public static final int SYSTEM_APP_STATE_UNINSTALLED = 3; + + /** {@hide} */ public int getUserId() { return UserHandle.myUserId(); } @@ -6620,6 +6658,17 @@ public abstract class PackageManager { @NonNull UserHandle userHandle); /** + * Sets system app state + * @param packageName Package name of the app. + * @param state State of the app. + * @hide + */ + @SystemApi + public void setSystemAppState(@NonNull String packageName, @SystemAppState int state) { + throw new RuntimeException("Not implemented. Must override in a subclass"); + } + + /** * Return whether the device has been booted into safe mode. */ public abstract boolean isSafeMode(); diff --git a/core/java/android/os/TelephonyServiceManager.java b/core/java/android/os/TelephonyServiceManager.java index c93eba6523f0..c67dedb4ac17 100644 --- a/core/java/android/os/TelephonyServiceManager.java +++ b/core/java/android/os/TelephonyServiceManager.java @@ -191,14 +191,6 @@ public class TelephonyServiceManager { } /** - * Returns {@link ServiceRegisterer} for the package manager service. - */ - @NonNull - public ServiceRegisterer getPackageManagerServiceRegisterer() { - return new ServiceRegisterer("package"); - } - - /** * Returns {@link ServiceRegisterer} for the ICC phone book service. */ @NonNull diff --git a/core/java/android/permission/PermissionManager.java b/core/java/android/permission/PermissionManager.java index 5a1ba7fe534c..4812ea98b569 100644 --- a/core/java/android/permission/PermissionManager.java +++ b/core/java/android/permission/PermissionManager.java @@ -266,6 +266,28 @@ public final class PermissionManager { } } + /** + * Grant default permissions to currently enabled carrier apps + * @param packageNames Package names of the apps to be granted permissions + * @param user The user handle + * @param executor The executor for the callback + * @param callback The callback provided by caller to be notified when grant completes + * @hide + */ + @SystemApi + @RequiresPermission(Manifest.permission.GRANT_RUNTIME_PERMISSIONS_TO_TELEPHONY_DEFAULTS) + public void grantDefaultPermissionsToEnabledCarrierApps(@NonNull String[] packageNames, + @NonNull UserHandle user, @NonNull @CallbackExecutor Executor executor, + @NonNull Consumer<Boolean> callback) { + try { + mPermissionManager.grantDefaultPermissionsToEnabledCarrierApps(packageNames, + user.getIdentifier()); + executor.execute(() -> callback.accept(true)); + } catch (RemoteException e) { + e.rethrowFromSystemServer(); + } + } + private List<SplitPermissionInfo> splitPermissionInfoListToNonParcelableList( List<SplitPermissionInfoParcelable> parcelableList) { final int size = parcelableList.size(); @@ -416,4 +438,4 @@ public final class PermissionManager { e.rethrowFromSystemServer(); } } -} +}
\ No newline at end of file |
