Clean up and expose simple AndroidPackage APIs
The remaining simple APIs were exposed except:
- Anything that is based on known derived state that may be overlaid
in the PackageState or PackageUserState (isEnabled)
- The other non-target SDK versions, which are probably better tracked
in the PackageState, and are unlikely to be useful as API
- Anything not inherently immutable, the path for which is not finalized
- Complex APIs spanning multiple methods (resizeable)
- APIs that might be better served by other surfaces
(overlays, SDKs, shared libraries)
API-Coverage-Bug: 262593427
Bug: 235462722
Test: atest AndroidPackageTest
Change-Id: Id08cb58dcf9715ce8771ec203dc395ac4fe0a88e
diff --git a/services/api/current.txt b/services/api/current.txt
index b5798d5..090a449 100644
--- a/services/api/current.txt
+++ b/services/api/current.txt
@@ -72,16 +72,90 @@
package com.android.server.pm.pkg {
public interface AndroidPackage {
+ method @Nullable public String getAppComponentFactory();
+ method @Nullable public String getApplicationClassName();
+ method @Nullable public String getBackupAgentName();
+ method @DrawableRes public int getBannerRes();
+ method public int getBaseRevisionCode();
+ method public int getCategory();
+ method @Nullable public String getClassLoaderName();
+ method @Dimension(unit=android.annotation.Dimension.DP) public int getCompatibleWidthLimitDp();
+ method @XmlRes public int getDataExtractionRulesRes();
+ method @StringRes public int getDescriptionRes();
+ method @XmlRes public int getFullBackupContentRes();
+ method public int getGwpAsanMode();
+ method @DrawableRes public int getIconRes();
+ method @StringRes public int getLabelRes();
+ method @Dimension(unit=android.annotation.Dimension.DP) public int getLargestWidthLimitDp();
method @NonNull public java.util.List<java.lang.String> getLibraryNames();
+ method @XmlRes public int getLocaleConfigRes();
+ method @DrawableRes public int getLogoRes();
+ method public long getLongVersionCode();
+ method public float getMaxAspectRatio();
+ method public float getMinAspectRatio();
+ method public int getNativeHeapZeroInitialized();
+ method @XmlRes public int getNetworkSecurityConfigRes();
+ method @Nullable public String getRequiredAccountType();
+ method @Dimension(unit=android.annotation.Dimension.DP) public int getRequiresSmallestWidthDp();
+ method @Nullable public String getRestrictedAccountType();
+ method @DrawableRes public int getRoundIconRes();
method @Nullable public String getSdkLibraryName();
+ method @Nullable public String getSharedUserId();
+ method @StringRes public int getSharedUserLabelRes();
method @NonNull public java.util.List<com.android.server.pm.pkg.AndroidPackageSplit> getSplits();
method @Nullable public String getStaticSharedLibraryName();
method @NonNull public java.util.UUID getStorageUuid();
method public int getTargetSdkVersion();
+ method @StyleRes public int getThemeRes();
+ method public int getUiOptions();
+ method @Nullable public String getVersionName();
+ method @Nullable public String getZygotePreloadName();
+ method public boolean isAllowAudioPlaybackCapture();
+ method public boolean isAllowBackup();
+ method public boolean isAllowClearUserData();
+ method public boolean isAllowClearUserDataOnFailedRestore();
+ method public boolean isAllowNativeHeapPointerTagging();
+ method public boolean isAllowTaskReparenting();
+ method public boolean isAnyDensity();
+ method public boolean isAttributionsUserVisible();
+ method public boolean isBackupInForeground();
+ method public boolean isCantSaveState();
+ method public boolean isCoreApp();
+ method public boolean isCrossProfile();
method public boolean isDebuggable();
+ method public boolean isDefaultToDeviceProtectedStorage();
+ method public boolean isDirectBootAware();
+ method public boolean isExtractNativeLibs();
+ method public boolean isFactoryTest();
+ method public boolean isForceQueryable();
+ method public boolean isFullBackupOnly();
+ method public boolean isHardwareAccelerated();
+ method public boolean isHasCode();
+ method public boolean isHasFragileUserData();
method public boolean isIsolatedSplitLoading();
+ method public boolean isKillAfterRestore();
+ method public boolean isLargeHeap();
+ method public boolean isLeavingSharedUser();
+ method public boolean isMultiArch();
+ method public boolean isNativeLibraryRootRequiresIsa();
+ method public boolean isOnBackInvokedCallbackEnabled();
+ method public boolean isPersistent();
+ method public boolean isProfileable();
+ method public boolean isProfileableByShell();
+ method public boolean isRequestLegacyExternalStorage();
+ method public boolean isRequiredForAllUsers();
+ method public boolean isResetEnabledSettingsOnAppDataCleared();
+ method public boolean isRestoreAnyVersion();
method public boolean isSignedWithPlatformKey();
+ method public boolean isSupportsExtraLargeScreens();
+ method public boolean isSupportsLargeScreens();
+ method public boolean isSupportsNormalScreens();
+ method public boolean isSupportsRtl();
+ method public boolean isSupportsSmallScreens();
+ method public boolean isTestOnly();
+ method public boolean isUse32BitAbi();
method public boolean isUseEmbeddedDex();
+ method public boolean isUsesCleartextTraffic();
method public boolean isUsesNonSdkApi();
method public boolean isVmSafeMode();
}