MockPackageManager


public class MockPackageManager
extends PackageManager

java.lang.Object
   ↳ android.content.pm.PackageManager
     ↳ android.test.mock.MockPackageManager


This class was deprecated in API level 24.
Use a mocking framework like Mockito. New tests should be written using the Android Testing Support Library.

A mock PackageManager class. All methods are non-functional and throw UnsupportedOperationException. Override it to provide the operations that you need.

Summary

Inherited constants

Inherited fields

Public constructors

MockPackageManager()

Public methods

void addPackageToPreferred(String packageName)

This method is deprecated. This function no longer does anything. It is the platform's responsibility to assign preferred activities and this cannot be modified directly. To determine the activities resolved by the platform, use resolveActivity(Intent, ResolveInfoFlags) or queryIntentActivities(Intent, ResolveInfoFlags). To configure an app to be responsible for a particular role and to check current role holders, see RoleManager.

boolean addPermission(PermissionInfo info)

Add a new dynamic permission to the system.

boolean addPermissionAsync(PermissionInfo info)

Like addPermission(PermissionInfo) but asynchronously persists the package manager state after returning from the call, allowing it to return quicker and batch a series of adds at the expense of no guarantee the added permission will be retained if the device is rebooted before it is written.

void addPreferredActivity(IntentFilter filter, int match, ComponentName[] set, ComponentName activity)

This method is deprecated. This function no longer does anything. It is the platform's responsibility to assign preferred activities and this cannot be modified directly. To determine the activities resolved by the platform, use resolveActivity(Intent, ResolveInfoFlags) or queryIntentActivities(Intent, ResolveInfoFlags). To configure an app to be responsible for a particular role and to check current role holders, see RoleManager.

boolean addWhitelistedRestrictedPermission(String packageName, String permission, int whitelistFlags)

Adds a whitelisted restricted permission for an app.

boolean canRequestPackageInstalls()

Checks whether the calling package is allowed to request package installs through package installer.

String[] canonicalToCurrentPackageNames(String[] names)

Map from a packages canonical name to the current name in use on the device.

int checkPermission(String permName, String pkgName)

Check whether a particular package has been granted a particular permission.

int checkSignatures(String pkg1, String pkg2)

Compare the signatures of two packages to determine if the same signature appears in both of them.

int checkSignatures(int uid1, int uid2)

Like checkSignatures(String,String), but takes UIDs of the two packages to be checked.

void clearInstantAppCookie()

Clears the instant application cookie for the calling app.

void clearPackagePreferredActivities(String packageName)

This method is deprecated. This function no longer does anything. It is the platform's responsibility to assign preferred activities and this cannot be modified directly. To determine the activities resolved by the platform, use resolveActivity(Intent, ResolveInfoFlags) or queryIntentActivities(Intent, ResolveInfoFlags). To configure an app to be responsible for a particular role and to check current role holders, see RoleManager.

String[] currentToCanonicalPackageNames(String[] names)

Map from the current package names in use on the device to whatever the current canonical name of that package is.

void extendVerificationTimeout(int id, int verificationCodeAtTimeout, long millisecondsToDelay)

Allows a package listening to the package verification broadcast to extend the default timeout for a response and declare what action to perform after the timeout occurs.

Drawable getActivityBanner(ComponentName activityName)

Retrieve the banner associated with an activity.

Drawable getActivityBanner(Intent intent)

Retrieve the banner associated with an Intent.

Drawable getActivityIcon(Intent intent)

Retrieve the icon associated with an Intent.

Drawable getActivityIcon(ComponentName activityName)

Retrieve the icon associated with an activity.

ActivityInfo getActivityInfo(ComponentName className, int flags)

Retrieve all of the information we know about a particular activity class.

Drawable getActivityLogo(Intent intent)

Retrieve the logo associated with an Intent.

Drawable getActivityLogo(ComponentName activityName)

Retrieve the logo associated with an activity.

List<IntentFilter> getAllIntentFilters(String packageName)

List<PermissionGroupInfo> getAllPermissionGroups(int flags)

Retrieve all of the known permission groups in the system.

Drawable getApplicationBanner(String packageName)

Retrieve the banner associated with an application.

Drawable getApplicationBanner(ApplicationInfo info)

Retrieve the banner associated with an application.

int getApplicationEnabledSetting(String packageName)

Return the enabled setting for an application.

Drawable getApplicationIcon(ApplicationInfo info)

Retrieve the icon associated with an application.

Drawable getApplicationIcon(String packageName)

Retrieve the icon associated with an application.

ApplicationInfo getApplicationInfo(String packageName, int flags)

Retrieve all of the information we know about a particular package/application.

CharSequence getApplicationLabel(ApplicationInfo info)

Return the label to use for this application.

Drawable getApplicationLogo(String packageName)

Retrieve the logo associated with an application.

Drawable getApplicationLogo(ApplicationInfo info)

Retrieve the logo associated with an application.

ChangedPackages getChangedPackages(int sequenceNumber)

Returns the names of the packages that have been changed [eg.

int getComponentEnabledSetting(ComponentName componentName)

Return the enabled setting for a package component (activity, receiver, service, provider).

Drawable getDefaultActivityIcon()

Return the generic icon for an activity that is used when no specific icon is defined.

Drawable getDrawable(String packageName, int resid, ApplicationInfo appInfo)

Retrieve an image from a package.

List<ApplicationInfo> getInstalledApplications(int flags)

Return a List of all application packages that are installed for the current user.

List<PackageInfo> getInstalledPackages(int flags)

Return a List of all packages that are installed for the current user.

String getInstallerPackageName(String packageName)

This method was deprecated in API level 24. use getInstallSourceInfo(String) instead

byte[] getInstantAppCookie()

Gets the instant application cookie for this app.

int getInstantAppCookieMaxBytes()

Gets the maximum size in bytes of the cookie data an instant app can store on the device.

InstrumentationInfo getInstrumentationInfo(ComponentName className, int flags)

Retrieve all of the information we know about a particular instrumentation class.

Intent getLaunchIntentForPackage(String packageName)

Returns a "good" intent to launch a front-door activity in a package.

Intent getLeanbackLaunchIntentForPackage(String packageName)

Return a "good" intent to launch a front-door Leanback activity in a package, for use for example to implement an "open" button when browsing through packages.

String getNameForUid(int uid)

Retrieve the official name associated with a uid.

PackageInfo getPackageArchiveInfo(String archiveFilePath, int flags)

Retrieve overall information about an application package defined in a package archive file Use getPackageArchiveInfo(String,PackageInfoFlags) when long flags are needed.

int[] getPackageGids(String packageName)

Return an array of all of the POSIX secondary group IDs that have been assigned to the given package.

int[] getPackageGids(String packageName, int flags)

Return an array of all of the POSIX secondary group IDs that have been assigned to the given package.

PackageInfo getPackageInfo(String packageName, int flags)

Retrieve overall information about an application package that is installed on the system.

PackageInfo getPackageInfo(VersionedPackage versionedPackage, int flags)

Retrieve overall information about an application package that is installed on the system.

PackageInstaller getPackageInstaller()

Return interface that offers the ability to install, upgrade, and remove applications on the device.

int getPackageUid(String packageName, int flags)

Return the UID associated with the given package name.

String[] getPackagesForUid(int uid)

Retrieve the names of all packages that are associated with a particular user id.

List<PackageInfo> getPackagesHoldingPermissions(String[] permissions, int flags)

Return a List of all installed packages that are currently holding any of the given permissions.

PermissionGroupInfo getPermissionGroupInfo(String name, int flags)

Retrieve all of the information we know about a particular group of permissions.

PermissionInfo getPermissionInfo(String name, int flags)

Retrieve all of the information we know about a particular permission.

int getPreferredActivities(List<IntentFilter> outFilters, List<ComponentName> outActivities, String packageName)

This method is deprecated. This function no longer does anything. It is the platform's responsibility to assign preferred activities and this cannot be modified directly. To determine the activities resolved by the platform, use resolveActivity(Intent, ResolveInfoFlags) or queryIntentActivities(Intent, ResolveInfoFlags). To configure an app to be responsible for a particular role and to check current role holders, see RoleManager.

List<PackageInfo> getPreferredPackages(int flags)

This method is deprecated. This function no longer does anything. It is the platform's responsibility to assign preferred activities and this cannot be modified directly. To determine the activities resolved by the platform, use resolveActivity(Intent, ResolveInfoFlags) or queryIntentActivities(Intent, ResolveInfoFlags). To configure an app to be responsible for a particular role and to check current role holders, see RoleManager.

ProviderInfo getProviderInfo(ComponentName className, int flags)

Retrieve all of the information we know about a particular content provider class.

ActivityInfo getReceiverInfo(ComponentName className, int flags)

Retrieve all of the information we know about a particular receiver class.

Resources getResourcesForActivity(ComponentName activityName)

Retrieve the resources associated with an activity.

Resources getResourcesForApplication(ApplicationInfo app)

Retrieve the resources for an application.

Resources getResourcesForApplication(String appPackageName)

Retrieve the resources associated with an application.

ServiceInfo getServiceInfo(ComponentName className, int flags)

Retrieve all of the information we know about a particular service class.

List<SharedLibraryInfo> getSharedLibraries(int flags)

Get a list of shared libraries on the device.

FeatureInfo[] getSystemAvailableFeatures()

Get a list of features that are available on the system.

String[] getSystemSharedLibraryNames()

Get a list of shared libraries that are available on the system.

CharSequence getText(String packageName, int resid, ApplicationInfo appInfo)

Retrieve text from a package.

Drawable getUserBadgedDrawableForDensity(Drawable drawable, UserHandle user, Rect badgeLocation, int badgeDensity)

If the target user is a managed profile of the calling user or the caller is itself a managed profile, then this returns a badged copy of the given drawable allowing the user to distinguish it from the original drawable.

Drawable getUserBadgedIcon(Drawable icon, UserHandle user)

If the target user is a managed profile, then this returns a badged copy of the given icon to be able to distinguish it from the original icon.

CharSequence getUserBadgedLabel(CharSequence label, UserHandle user)

If the target user is a managed profile of the calling user or the caller is itself a managed profile, then this returns a copy of the label with badging for accessibility services like talkback.

Set<String> getWhitelistedRestrictedPermissions(String packageName, int whitelistFlags)

Gets the restricted permissions that have been whitelisted and the app is allowed to have them granted in their full form.

XmlResourceParser getXml(String packageName, int resid, ApplicationInfo appInfo)

Retrieve an XML file from a package.

boolean hasSigningCertificate(int uid, byte[] certificate, int type)

Searches the set of signing certificates by which the package(s) for the given uid has proven to have been signed.

boolean hasSigningCertificate(String packageName, byte[] certificate, int type)

Searches the set of signing certificates by which the given package has proven to have been signed.

boolean hasSystemFeature(String name)

Check whether the given feature name is one of the available features as returned by getSystemAvailableFeatures().

boolean hasSystemFeature(String name, int version)

Check whether the given feature name and version is one of the available features as returned by getSystemAvailableFeatures().

boolean isDeviceUpgrading()

Returns true if the device is upgrading, such as first boot after OTA.

boolean isInstantApp()

Gets whether this application is an instant app.

boolean isInstantApp(String packageName)

Gets whether the given package is an instant app.

boolean isPermissionRevokedByPolicy(String permName, String pkgName)

Checks whether a particular permissions has been revoked for a package by policy.

boolean isSafeMode()

Return whether the device has been booted into safe mode.

List<ResolveInfo> queryBroadcastReceivers(Intent intent, int flags)

Retrieve all receivers that can handle a broadcast of the given intent.

List<ProviderInfo> queryContentProviders(String processName, int uid, int flags)

Retrieve content provider information.

List<InstrumentationInfo> queryInstrumentation(String targetPackage, int flags)

Retrieve information about available instrumentation code.

List<ResolveInfo> queryIntentActivities(Intent intent, int flags)

Retrieve all activities that can be performed for the given intent.

List<ResolveInfo> queryIntentActivityOptions(ComponentName caller, Intent[] specifics, Intent intent, int flags)

Retrieve a set of activities that should be presented to the user as similar options.

List<ResolveInfo> queryIntentContentProviders(Intent intent, int flags)

Retrieve all providers that can match the given intent.

List<ResolveInfo> queryIntentServices(Intent intent, int flags)

Retrieve all services that can match the given intent.

List<PermissionInfo> queryPermissionsByGroup(String group, int flags)

Query for all of the permissions associated with a particular group.

void removePackageFromPreferred(String packageName)

This method is deprecated. This function no longer does anything. It is the platform's responsibility to assign preferred activities and this cannot be modified directly. To determine the activities resolved by the platform, use resolveActivity(Intent, ResolveInfoFlags) or queryIntentActivities(Intent, ResolveInfoFlags). To configure an app to be responsible for a particular role and to check current role holders, see RoleManager.

void removePermission(String name)

Removes a permission that was previously added with addPermission(PermissionInfo).

boolean removeWhitelistedRestrictedPermission(String packageName, String permission, int whitelistFlags)

Removes a whitelisted restricted permission for an app.

ResolveInfo resolveActivity(Intent intent, int flags)

Determine the best action to perform for a given Intent.

ProviderInfo resolveContentProvider(String name, int flags)

Find a single content provider by its authority.

ResolveInfo resolveService(Intent intent, int flags)

Determine the best service to handle for a given Intent.

ResolveInfo resolveServiceAsUser(Intent intent, int flags, int userId)

void setApplicationCategoryHint(String packageName, int categoryHint)

Provide a hint of what the ApplicationInfo.category value should be for the given package.

void setApplicationEnabledSetting(String packageName, int newState, int flags)

Set the enabled setting for an application This setting will override any enabled state which may have been set by the application in its manifest.

void setComponentEnabledSetting(ComponentName componentName, int newState, int flags)

Set the enabled setting for a package component (activity, receiver, service, provider).

void setInstallerPackageName(String targetPackage, String installerPackageName)

Change the installer associated with a given package.

boolean setInstantAppCookie(byte[] cookie)

void updateInstantAppCookie(byte[] cookie)

Updates the instant application cookie for the calling app.

void verifyPendingInstall(int id, int verificationCode)

Allows a package listening to the package verification broadcast to respond to the package manager.

Inherited methods

Public constructors

MockPackageManager

public MockPackageManager ()

Public methods

addPackageToPreferred

Added in API level 1
public void addPackageToPreferred (String packageName)

This method is deprecated.
This function no longer does anything. It is the platform's responsibility to assign preferred activities and this cannot be modified directly. To determine the activities resolved by the platform, use resolveActivity(Intent, ResolveInfoFlags) or queryIntentActivities(Intent, ResolveInfoFlags). To configure an app to be responsible for a particular role and to check current role holders, see RoleManager.

Parameters
packageName String: This value cannot be null.

addPermission

Added in API level 1
public boolean addPermission (PermissionInfo info)

Add a new dynamic permission to the system. For this to work, your package must have defined a permission tree through the <permission-tree> tag in its manifest. A package can only add permissions to trees that were defined by either its own package or another with the same user id; a permission is in a tree if it matches the name of the permission tree + ".": for example, "com.foo.bar" is a member of the permission tree "com.foo".

It is good to make your permission tree name descriptive, because you are taking possession of that entire set of permission names. Thus, it must be under a domain you control, with a suffix that will not match any normal permissions that may be declared in any applications that are part of that domain.

New permissions must be added before any .apks are installed that use those permissions. Permissions you add through this method are remembered across reboots of the device. If the given permission already exists, the info you supply here will be used to update it.

Parameters
info PermissionInfo: Description of the permission to be added.
This value cannot be null.

Returns
boolean Returns true if a new permission was created, false if an existing one was updated.

addPermissionAsync

Added in API level 8
Deprecated in API level 24
public boolean addPermissionAsync (PermissionInfo info)

Like addPermission(PermissionInfo) but asynchronously persists the package manager state after returning from the call, allowing it to return quicker and batch a series of adds at the expense of no guarantee the added permission will be retained if the device is rebooted before it is written.

Parameters
info PermissionInfo: This value cannot be null.

Returns
boolean

addPreferredActivity

Added in API level 1
public void addPreferredActivity (IntentFilter filter, 
                int match, 
                ComponentName[] set, 
                ComponentName activity)

This method is deprecated.
This function no longer does anything. It is the platform's responsibility to assign preferred activities and this cannot be modified directly. To determine the activities resolved by the platform, use resolveActivity(Intent, ResolveInfoFlags) or queryIntentActivities(Intent, ResolveInfoFlags). To configure an app to be responsible for a particular role and to check current role holders, see RoleManager.

Add a new preferred activity mapping to the system. This will be used to automatically select the given activity component when Context.startActivity() finds multiple matching activities and also matches the given filter.

Parameters
filter IntentFilter: The set of intents under which this activity will be made preferred.
This value cannot be null.

match int: The IntentFilter match category that this preference applies to.

set ComponentName: The set of activities that the user was picking from when this preference was made.
This value may be null.

activity ComponentName: The component name of the activity that is to be preferred.
This value cannot be null.

addWhitelistedRestrictedPermission

public boolean addWhitelistedRestrictedPermission (String packageName, 
                String permission, 
                int whitelistFlags)

Adds a whitelisted restricted permission for an app.

Permissions can be hard restricted which means that the app cannot hold them or soft restricted where the app can hold the permission but in a weaker form. Whether a permission is hard restricted or soft restricted depends on the permission declaration. Whitelisting a hard restricted permission allows for the to hold that permission and whitelisting a soft restricted permission allows the app to hold the permission in its full, unrestricted form.

    There are four whitelists:
  1. one for cases where the system permission policy whitelists a permission This list corresponds to the FLAG_PERMISSION_WHITELIST_SYSTEM flag. Can only be modified by pre-installed holders of a dedicated permission.
  2. one for cases where the system whitelists the permission when upgrading from an OS version in which the permission was not restricted to an OS version in which the permission is restricted. This list corresponds to the FLAG_PERMISSION_WHITELIST_UPGRADE flag. Can be modified by pre-installed holders of a dedicated permission. The installer on record can only remove permissions from this whitelist.
  3. one for cases where the installer of the package whitelists a permission. This list corresponds to the FLAG_PERMISSION_WHITELIST_INSTALLER flag. Can be modified by pre-installed holders of a dedicated permission or the installer on record.

You need to specify the whitelists for which to set the whitelisted permissions which will clear the previous whitelisted permissions and replace them with the provided ones.

Note: In retrospect it would have been preferred to use more inclusive terminology when naming this API. Similar APIs added will refrain from using the term "whitelist".

Parameters
packageName String: The app for which to get whitelisted permissions.
This value cannot be null.

permission String: The whitelisted permission to add.
This value cannot be null.

whitelistFlags int: The whitelists to which to add. Passing multiple flags updates all specified whitelists.
Value is either 0 or a combination of the following:
Returns
boolean Whether the permission was added to the whitelist.

canRequestPackageInstalls

Added in API level 26
Deprecated in API level 24
public boolean canRequestPackageInstalls ()

Checks whether the calling package is allowed to request package installs through package installer. Apps are encouraged to call this API before launching the package installer via intent Intent.ACTION_INSTALL_PACKAGE. Starting from Android O, the user can explicitly choose what external sources they trust to install apps on the device. If this API returns false, the install request will be blocked by the package installer and a dialog will be shown to the user with an option to launch settings to change their preference. An application must target Android O or higher and declare permission Manifest.permission.REQUEST_INSTALL_PACKAGES in order to use this API.

Returns
boolean true if the calling package is trusted by the user to request install packages on the device, false otherwise.

canonicalToCurrentPackageNames

Added in API level 8
Deprecated in API level 24
public String[] canonicalToCurrentPackageNames (String[] names)

Map from a packages canonical name to the current name in use on the device.

Parameters
names String: Array of new names to be mapped.
This value cannot be null.

Returns
String[] Returns an array of the same size as the original, containing the current name for each package.

checkPermission

Added in API level 1
public int checkPermission (String permName, 
                String pkgName)

Check whether a particular package has been granted a particular permission.

Note: This API returns the underlying permission state as-is and is mostly intended for permission managing system apps. To perform an access check for a certain app, please use the Context.checkPermission APIs instead.

Parameters
permName String: The name of the permission you are checking for.
This value cannot be null.

pkgName String: The name of the package you are checking against.
This value cannot be null.

Returns
int If the package has the permission, PERMISSION_GRANTED is returned. If it does not have the permission, PERMISSION_DENIED is returned.
Value is one of the following:

checkSignatures

Added in API level 1
public int checkSignatures (String pkg1, 
                String pkg2)

Compare the signatures of two packages to determine if the same signature appears in both of them. If they do contain the same signature, then they are allowed special privileges when working with each other: they can share the same user-id, run instrumentation against each other, etc.

Parameters
pkg1 String: First package name whose signature will be compared.
This value cannot be null.

pkg2 String: Second package name whose signature will be compared.
This value cannot be null.

Returns
int Returns an integer indicating whether all signatures on the two packages match. The value is >= 0 (SIGNATURE_MATCH) if all signatures match or < 0 if there is not a match (SIGNATURE_NO_MATCH or SIGNATURE_UNKNOWN_PACKAGE).
Value is one of the following:

checkSignatures

Added in API level 5
Deprecated in API level 24
public int checkSignatures (int uid1, 
                int uid2)

Like checkSignatures(String,String), but takes UIDs of the two packages to be checked. This can be useful, for example, when doing the check in an IPC, where the UID is the only identity available. It is functionally identical to determining the package associated with the UIDs and checking their signatures.

Parameters
uid1 int: First UID whose signature will be compared.

uid2 int: Second UID whose signature will be compared.

Returns
int Returns an integer indicating whether all signatures on the two packages match. The value is >= 0 (SIGNATURE_MATCH) if all signatures match or < 0 if there is not a match (SIGNATURE_NO_MATCH or SIGNATURE_UNKNOWN_PACKAGE).
Value is one of the following:

clearInstantAppCookie

Added in API level 26
public void clearInstantAppCookie ()

Clears the instant application cookie for the calling app.

clearPackagePreferredActivities

Added in API level 1
public void clearPackagePreferredActivities (String packageName)

This method is deprecated.
This function no longer does anything. It is the platform's responsibility to assign preferred activities and this cannot be modified directly. To determine the activities resolved by the platform, use resolveActivity(Intent, ResolveInfoFlags) or queryIntentActivities(Intent, ResolveInfoFlags). To configure an app to be responsible for a particular role and to check current role holders, see RoleManager.

Remove all preferred activity mappings, previously added with addPreferredActivity(IntentFilter, int, ComponentName, ComponentName), from the system whose activities are implemented in the given package name. An application can only clear its own package(s).

Parameters
packageName String: The name of the package whose preferred activity mappings are to be removed.
This value cannot be null.

currentToCanonicalPackageNames

Added in API level 8
Deprecated in API level 24
public String[] currentToCanonicalPackageNames (String[] names)

Map from the current package names in use on the device to whatever the current canonical name of that package is.

Parameters
names String: Array of current names to be mapped.
This value cannot be null.

Returns
String[] Returns an array of the same size as the original, containing the canonical name for each package.

extendVerificationTimeout

Added in API level 17
Deprecated in API level 24
public void extendVerificationTimeout (int id, 
                int verificationCodeAtTimeout, 
                long millisecondsToDelay)

Allows a package listening to the package verification broadcast to extend the default timeout for a response and declare what action to perform after the timeout occurs. The response must include the verificationCodeAtTimeout which is one of PackageManager.VERIFICATION_ALLOW or PackageManager.VERIFICATION_REJECT. This method can be called multiple times, but the total amount of time extension time will be limited to PackageManager.MAXIMUM_VERIFICATION_TIMEOUT. If the method is called multiple times with different verificationCodeAtTimeout, then previous verificationCodeAtTimeout will be ignored and only the latest one will take effect. If this method is called after calling PackageManager.verifyPendingInstall, it may nullify the result set by verifyPendingInstall.

Parameters
id int: pending package identifier as passed via the PackageManager.EXTRA_VERIFICATION_ID Intent extra.

verificationCodeAtTimeout int: either PackageManager.VERIFICATION_ALLOW or PackageManager.VERIFICATION_REJECT. If verificationCodeAtTimeout is neither PackageManager.VERIFICATION_ALLOW or PackageManager.VERIFICATION_REJECT, then verificationCodeAtTimeout will default to PackageManager.VERIFICATION_REJECT.

millisecondsToDelay long: the amount of time requested for the timeout. Must be positive and less than PackageManager.MAXIMUM_VERIFICATION_TIMEOUT. If millisecondsToDelay is out of bounds, millisecondsToDelay will be set to the closest in bounds value; namely, 0 or PackageManager.MAXIMUM_VERIFICATION_TIMEOUT.

getActivityBanner

Added in API level 20
Deprecated in API level 24
public Drawable getActivityBanner (ComponentName activityName)

Retrieve the banner associated with an activity. Given the full name of an activity, retrieves the information about it and calls ComponentInfo.loadIcon() to return its banner. If the activity cannot be found, NameNotFoundException is thrown.

Parameters
activityName ComponentName: Name of the activity whose banner is to be retrieved.
This value cannot be null.

Returns
Drawable Returns the image of the banner, or null if the activity has no banner specified.

Throws
PackageManager.NameNotFoundException

getActivityBanner

Added in API level 20
Deprecated in API level 24
public Drawable getActivityBanner (Intent intent)

Retrieve the banner associated with an Intent. If intent.getClassName() is set, this simply returns the result of getActivityBanner(intent.getClassName()). Otherwise it resolves the intent's component and returns the banner associated with the resolved component. If intent.getClassName() cannot be found or the Intent cannot be resolved to a component, NameNotFoundException is thrown.

Parameters
intent Intent: The intent for which you would like to retrieve a banner.
This value cannot be null.

Returns
Drawable Returns the image of the banner, or null if the activity has no banner specified.

Throws
PackageManager.NameNotFoundException

getActivityIcon

Added in API level 1
public Drawable getActivityIcon (Intent intent)

Retrieve the icon associated with an Intent. If intent.getClassName() is set, this simply returns the result of getActivityIcon(intent.getClassName()). Otherwise it resolves the intent's component and returns the icon associated with the resolved component. If intent.getClassName() cannot be found or the Intent cannot be resolved to a component, NameNotFoundException is thrown.

Parameters
intent Intent: The intent for which you would like to retrieve an icon.
This value cannot be null.

Returns
Drawable Returns the image of the icon, or the default activity icon if it could not be found. Does not return null.

Throws
PackageManager.NameNotFoundException

getActivityIcon

Added in API level 1
public Drawable getActivityIcon (ComponentName activityName)

Retrieve the icon associated with an activity. Given the full name of an activity, retrieves the information about it and calls ComponentInfo.loadIcon() to return its icon. If the activity cannot be found, NameNotFoundException is thrown.

Parameters
activityName ComponentName: Name of the activity whose icon is to be retrieved.
This value cannot be null.

Returns
Drawable Returns the image of the icon, or the default activity icon if it could not be found. Does not return null.

Throws
PackageManager.NameNotFoundException

getActivityInfo

Added in API level 1
public ActivityInfo getActivityInfo (ComponentName className, 
                int flags)

Retrieve all of the information we know about a particular activity class. Use getActivityInfo(ComponentName,ComponentInfoFlags) when long flags are needed.

Parameters
className ComponentName: The full component name (i.e. com.google.apps.contacts/com.google.apps.contacts. ContactsList) of an Activity class.
This value cannot be null.

flags int: Additional option flags to modify the data returned.

Returns
ActivityInfo An ActivityInfo containing information about the activity.
This value cannot be null.

Throws
PackageManager.NameNotFoundException

getActivityLogo

Added in API level 9
Deprecated in API level 24
public Drawable getActivityLogo (Intent intent)

Retrieve the logo associated with an Intent. If intent.getClassName() is set, this simply returns the result of getActivityLogo(intent.getClassName()). Otherwise it resolves the intent's component and returns the logo associated with the resolved component. If intent.getClassName() cannot be found or the Intent cannot be resolved to a component, NameNotFoundException is thrown.

Parameters
intent Intent: The intent for which you would like to retrieve a logo.
This value cannot be null.

Returns
Drawable Returns the image of the logo, or null if the activity has no logo specified.

Throws
PackageManager.NameNotFoundException

getActivityLogo

Added in API level 9
Deprecated in API level 24
public Drawable getActivityLogo (ComponentName activityName)

Retrieve the logo associated with an activity. Given the full name of an activity, retrieves the information about it and calls ComponentInfo.loadLogo() to return its logo. If the activity cannot be found, NameNotFoundException is thrown.

Parameters
activityName ComponentName: Name of the activity whose logo is to be retrieved.
This value cannot be null.

Returns
Drawable Returns the image of the logo or null if the activity has no logo specified.

Throws
PackageManager.NameNotFoundException

getAllIntentFilters

Added in API level 23
Deprecated in API level 24
public List<IntentFilter> getAllIntentFilters (String packageName)

Parameters
packageName String

Returns
List<IntentFilter>

getAllPermissionGroups

Added in API level 1
public List<PermissionGroupInfo> getAllPermissionGroups (int flags)

Retrieve all of the known permission groups in the system.

Parameters
flags int: Additional option flags to modify the data returned.
Value is either 0 or
Returns
List<PermissionGroupInfo> Returns a list of PermissionGroupInfo containing information about all of the known permission groups.
This value cannot be null.

getApplicationBanner

Added in API level 20
Deprecated in API level 24
public Drawable getApplicationBanner (String packageName)

Retrieve the banner associated with an application. Given the name of the application's package, retrieves the information about it and calls getApplicationIcon() to return its banner. If the application cannot be found, NameNotFoundException is thrown.

Parameters
packageName String: Name of the package whose application banner is to be retrieved.
This value cannot be null.

Returns
Drawable Returns the image of the banner or null if the application has no banner specified.

Throws
PackageManager.NameNotFoundException

getApplicationBanner

Added in API level 20
Deprecated in API level 24
public Drawable getApplicationBanner (ApplicationInfo info)

Retrieve the banner associated with an application.

Parameters
info ApplicationInfo: Information about application being queried.
This value cannot be null.

Returns
Drawable Returns the image of the banner or null if the application has no banner specified.

getApplicationEnabledSetting

Added in API level 1
public int getApplicationEnabledSetting (String packageName)

Return the enabled setting for an application. This returns the last value set by setApplicationEnabledSetting(String,int,int); in most cases this value will be COMPONENT_ENABLED_STATE_DEFAULT since the value originally specified in the manifest has not been modified.

Parameters
packageName String: The package name of the application to retrieve.
This value cannot be null.

Returns
int Returns the current enabled state for the application.
Value is one of the following:

getApplicationIcon

Added in API level 1
public Drawable getApplicationIcon (ApplicationInfo info)

Retrieve the icon associated with an application. If it has not defined an icon, the default app icon is returned. Does not return null.

Parameters
info ApplicationInfo: Information about application being queried.
This value cannot be null.

Returns
Drawable Returns the image of the icon, or the default application icon if it could not be found.

getApplicationIcon

Added in API level 1
public Drawable getApplicationIcon (String packageName)

Retrieve the icon associated with an application. Given the name of the application's package, retrieves the information about it and calls getApplicationIcon() to return its icon. If the application cannot be found, NameNotFoundException is thrown.

Parameters
packageName String: Name of the package whose application icon is to be retrieved.
This value cannot be null.

Returns
Drawable Returns the image of the icon, or the default application icon if it could not be found. Does not return null.

Throws
PackageManager.NameNotFoundException

getApplicationInfo

Added in API level 1
public ApplicationInfo getApplicationInfo (String packageName, 
                int flags)

Retrieve all of the information we know about a particular package/application. Use getApplicationInfo(String,ApplicationInfoFlags) when long flags are needed.

Parameters
packageName String: The full name (i.e. com.google.apps.contacts) of an application.
This value cannot be null.

flags int: Additional option flags to modify the data returned.

Returns
ApplicationInfo An ApplicationInfo containing information about the package. If flag MATCH_UNINSTALLED_PACKAGES is set and if the package is not found in the list of installed applications, the application information is retrieved from the list of uninstalled applications (which includes installed applications as well as applications with data directory i.e. applications which had been deleted with DELETE_KEEP_DATA flag set).
This value cannot be null.

Throws
PackageManager.NameNotFoundException

getApplicationLabel

Added in API level 1
public CharSequence getApplicationLabel (ApplicationInfo info)

Return the label to use for this application.

Parameters
info ApplicationInfo: The ApplicationInfo of the application to get the label of.
This value cannot be null.

Returns
CharSequence Returns a CharSequence containing the label associated with this application, or its name the item does not have a label.
This value cannot be null.

getApplicationLogo

Added in API level 9
Deprecated in API level 24
public Drawable getApplicationLogo (String packageName)

Retrieve the logo associated with an application. Given the name of the application's package, retrieves the information about it and calls getApplicationLogo() to return its logo. If the application cannot be found, NameNotFoundException is thrown.

Parameters
packageName String: Name of the package whose application logo is to be retrieved.
This value cannot be null.

Returns
Drawable Returns the image of the logo, or null if no application logo has been specified.

Throws
PackageManager.NameNotFoundException

getApplicationLogo

Added in API level 9
Deprecated in API level 24
public Drawable getApplicationLogo (ApplicationInfo info)

Retrieve the logo associated with an application. If it has not specified a logo, this method returns null.

Parameters
info ApplicationInfo: Information about application being queried.
This value cannot be null.

Returns
Drawable Returns the image of the logo, or null if no logo is specified by the application.

getChangedPackages

Added in API level 26
public ChangedPackages getChangedPackages (int sequenceNumber)

Returns the names of the packages that have been changed [eg. added, removed or updated] since the given sequence number.

If no packages have been changed, returns null.

The sequence number starts at 0 and is reset every boot.

Parameters
sequenceNumber int: The first sequence number for which to retrieve package changes.
Value is 0 or greater

Returns
ChangedPackages

getComponentEnabledSetting

Added in API level 1
public int getComponentEnabledSetting (ComponentName componentName)

Return the enabled setting for a package component (activity, receiver, service, provider). This returns the last value set by setComponentEnabledSetting(ComponentName,int,int); in most cases this value will be COMPONENT_ENABLED_STATE_DEFAULT since the value originally specified in the manifest has not been modified.

Parameters
componentName ComponentName: The component to retrieve.
This value cannot be null.

Returns
int Returns the current enabled state for the component.
Value is one of the following:

getDefaultActivityIcon

Added in API level 1
public Drawable getDefaultActivityIcon ()

Return the generic icon for an activity that is used when no specific icon is defined.

Returns
Drawable Drawable Image of the icon.
This value cannot be null.

getDrawable

Added in API level 1
public Drawable getDrawable (String packageName, 
                int resid, 
                ApplicationInfo appInfo)

Retrieve an image from a package. This is a low-level API used by the various package manager info structures (such as ComponentInfo to implement retrieval of their associated icon.

Parameters
packageName String: The name of the package that this icon is coming from. Cannot be null.

resid int: The resource identifier of the desired image. Cannot be 0.

appInfo ApplicationInfo: Overall information about packageName. This may be null, in which case the application information will be retrieved for you if needed; if you already have this information around, it can be much more efficient to supply it here.

Returns
Drawable Returns a Drawable holding the requested image. Returns null if an image could not be found for any reason.

getInstalledApplications

Added in API level 1
public List<ApplicationInfo> getInstalledApplications (int flags)

Return a List of all application packages that are installed for the current user. If flag GET_UNINSTALLED_PACKAGES has been set, a list of all applications including those deleted with DELETE_KEEP_DATA (partially installed apps with data directory) will be returned. Use getInstalledApplications(ApplicationInfoFlags) when long flags are needed.

Parameters
flags int: Additional option flags to modify the data returned.

Returns
List<ApplicationInfo> A List of ApplicationInfo objects, one for each installed application. In the unlikely case there are no installed packages, an empty list is returned. If flag MATCH_UNINSTALLED_PACKAGES is set, the application information is retrieved from the list of uninstalled applications (which includes installed applications as well as applications with data directory i.e. applications which had been deleted with DELETE_KEEP_DATA flag set).
This value cannot be null.

getInstalledPackages

Added in API level 1
public List<PackageInfo> getInstalledPackages (int flags)

Return a List of all packages that are installed for the current user. Use getInstalledPackages(PackageInfoFlags) when long flags are needed.

Parameters
flags int: Additional option flags to modify the data returned.

Returns
List<PackageInfo> A List of PackageInfo objects, one for each installed package, containing information about the package. In the unlikely case there are no installed packages, an empty list is returned. If flag MATCH_UNINSTALLED_PACKAGES is set, the package information is retrieved from the list of uninstalled applications (which includes installed applications as well as applications with data directory i.e. applications which had been deleted with DELETE_KEEP_DATA flag set).
This value cannot be null.

getInstallerPackageName

Added in API level 5
Deprecated in API level 24
public String getInstallerPackageName (String packageName)

This method was deprecated in API level 24.
use getInstallSourceInfo(String) instead

Retrieve the package name of the application that installed a package. This identifies which market the package came from.

Parameters
packageName String: The name of the package to query.
This value cannot be null.

Returns
String This value may be null.

getInstantAppCookie

Added in API level 26
public byte[] getInstantAppCookie ()

Gets the instant application cookie for this app. Non instant apps and apps that were instant but were upgraded to normal apps can still access this API. For instant apps this cookie is cached for some time after uninstall while for normal apps the cookie is deleted after the app is uninstalled. The cookie is always present while the app is installed.

Returns
byte[] The cookie.
This value cannot be null.

getInstantAppCookieMaxBytes

Added in API level 26
public int getInstantAppCookieMaxBytes ()

Gets the maximum size in bytes of the cookie data an instant app can store on the device.

Returns
int The max cookie size in bytes.

getInstrumentationInfo

Added in API level 1
public InstrumentationInfo getInstrumentationInfo (ComponentName className, 
                int flags)

Retrieve all of the information we know about a particular instrumentation class.

Parameters
className ComponentName: The full name (i.e. com.google.apps.contacts.InstrumentList) of an Instrumentation class.
This value cannot be null.

flags int: Additional option flags to modify the data returned.
Value is either 0 or
Returns
InstrumentationInfo An InstrumentationInfo object containing information about the instrumentation.
This value cannot be null.

Throws
PackageManager.NameNotFoundException

getLaunchIntentForPackage

Added in API level 3
Deprecated in API level 24
public Intent getLaunchIntentForPackage (String packageName)

Returns a "good" intent to launch a front-door activity in a package. This is used, for example, to implement an "open" button when browsing through packages. The current implementation looks first for a main activity in the category Intent.CATEGORY_INFO, and next for a main activity in the category Intent.CATEGORY_LAUNCHER. Returns null if neither are found.

Consider using getLaunchIntentSenderForPackage(String) if the caller is not allowed to query for the packageName.

Parameters
packageName String: The name of the package to inspect.
This value cannot be null.

Returns
Intent A fully-qualified Intent that can be used to launch the main activity in the package. Returns null if the package does not contain such an activity, or if packageName is not recognized.

getLeanbackLaunchIntentForPackage

Added in API level 21
Deprecated in API level 24
public Intent getLeanbackLaunchIntentForPackage (String packageName)

Return a "good" intent to launch a front-door Leanback activity in a package, for use for example to implement an "open" button when browsing through packages. The current implementation will look for a main activity in the category Intent.CATEGORY_LEANBACK_LAUNCHER, or return null if no main leanback activities are found.

Parameters
packageName String: The name of the package to inspect.
This value cannot be null.

Returns
Intent Returns either a fully-qualified Intent that can be used to launch the main Leanback activity in the package, or null if the package does not contain such an activity.

getNameForUid

Added in API level 1
public String getNameForUid (int uid)

Retrieve the official name associated with a uid. This name is guaranteed to never change, though it is possible for the underlying uid to be changed. That is, if you are storing information about uids in persistent storage, you should use the string returned by this function instead of the raw uid.

Parameters
uid int: The uid for which you would like to retrieve a name.

Returns
String Returns a unique name for the given uid, or null if the uid is not currently assigned.

getPackageArchiveInfo

Added in API level 1
public PackageInfo getPackageArchiveInfo (String archiveFilePath, 
                int flags)

Retrieve overall information about an application package defined in a package archive file Use getPackageArchiveInfo(String,PackageInfoFlags) when long flags are needed.

Parameters
archiveFilePath String: The path to the archive file.
This value cannot be null.

flags int: Additional option flags to modify the data returned.

Returns
PackageInfo A PackageInfo object containing information about the package archive. If the package could not be parsed, returns null.

getPackageGids

Added in API level 1
public int[] getPackageGids (String packageName)

Return an array of all of the POSIX secondary group IDs that have been assigned to the given package.

Note that the same package may have different GIDs under different UserHandle on the same device.

Parameters
packageName String: The full name (i.e. com.google.apps.contacts) of the desired package.
This value cannot be null.

Returns
int[] Returns an int array of the assigned GIDs, or null if there are none.

Throws
PackageManager.NameNotFoundException

getPackageGids

Added in API level 24
Deprecated in API level 24
public int[] getPackageGids (String packageName, 
                int flags)

Return an array of all of the POSIX secondary group IDs that have been assigned to the given package.

Note that the same package may have different GIDs under different UserHandle on the same device. Use getPackageGids(String,PackageInfoFlags) when long flags are needed.

Parameters
packageName String: The full name (i.e. com.google.apps.contacts) of the desired package.
This value cannot be null.

flags int

Returns
int[] Returns an int array of the assigned gids, or null if there are none.

Throws
PackageManager.NameNotFoundException

getPackageInfo

Added in API level 1
public PackageInfo getPackageInfo (String packageName, 
                int flags)

Retrieve overall information about an application package that is installed on the system. Use getPackageInfo(String,PackageInfoFlags) when long flags are needed.

Parameters
packageName String: The full name (i.e. com.google.apps.contacts) of the desired package.
This value cannot be null.

flags int: Additional option flags to modify the data returned.

Returns
PackageInfo A PackageInfo object containing information about the package. If flag MATCH_UNINSTALLED_PACKAGES is set and if the package is not found in the list of installed applications, the package information is retrieved from the list of uninstalled applications (which includes installed applications as well as applications with data directory i.e. applications which had been deleted with DELETE_KEEP_DATA flag set).

Throws
PackageManager.NameNotFoundException

getPackageInfo

Added in API level 26
Deprecated in API level 24
public PackageInfo getPackageInfo (VersionedPackage versionedPackage, 
                int flags)

Retrieve overall information about an application package that is installed on the system. This method can be used for retrieving information about packages for which multiple versions can be installed at the time. Currently only packages hosting static shared libraries can have multiple installed versions. The method can also be used to get info for a package that has a single version installed by passing VERSION_CODE_HIGHEST in the VersionedPackage constructor. Use getPackageInfo(VersionedPackage,PackageInfoFlags) when long flags are needed.

Parameters
versionedPackage VersionedPackage: The versioned package for which to query.
This value cannot be null.

flags int: Additional option flags to modify the data returned.

Returns
PackageInfo A PackageInfo object containing information about the package. If flag MATCH_UNINSTALLED_PACKAGES is set and if the package is not found in the list of installed applications, the package information is retrieved from the list of uninstalled applications (which includes installed applications as well as applications with data directory i.e. applications which had been deleted with DELETE_KEEP_DATA flag set).

Throws
PackageManager.NameNotFoundException

getPackageInstaller

Added in API level 21
public PackageInstaller getPackageInstaller ()

Return interface that offers the ability to install, upgrade, and remove applications on the device.

Returns
PackageInstaller This value cannot be null.

getPackageUid

Added in API level 24
Deprecated in API level 24
public int getPackageUid (String packageName, 
                int flags)

Return the UID associated with the given package name.

Note that the same package will have different UIDs under different UserHandle on the same device. Use getPackageUid(String,PackageInfoFlags) when long flags are needed.

Parameters
packageName String: The full name (i.e. com.google.apps.contacts) of the desired package.
This value cannot be null.

flags int

Returns
int Returns an integer UID who owns the given package name.

Throws
PackageManager.NameNotFoundException

getPackagesForUid

Added in API level 1
public String[] getPackagesForUid (int uid)

Retrieve the names of all packages that are associated with a particular user id. In most cases, this will be a single package name, the package that has been assigned that user id. Where there are multiple packages sharing the same user id through the "sharedUserId" mechanism, all packages with that id will be returned.

Parameters
uid int: The user id for which you would like to retrieve the associated packages.

Returns
String[] Returns an array of one or more packages assigned to the user id, or null if there are no known packages with the given id.

getPackagesHoldingPermissions

Added in API level 18
Deprecated in API level 24
public List<PackageInfo> getPackagesHoldingPermissions (String[] permissions, 
                int flags)

Return a List of all installed packages that are currently holding any of the given permissions. Use getPackagesHoldingPermissions(String[],PackageInfoFlags) when long flags are needed.

Parameters
permissions String: This value cannot be null.

flags int: Additional option flags to modify the data returned.

Returns
List<PackageInfo> A List of PackageInfo objects, one for each installed package that holds any of the permissions that were provided, containing information about the package. If no installed packages hold any of the permissions, an empty list is returned. If flag MATCH_UNINSTALLED_PACKAGES is set, the package information is retrieved from the list of uninstalled applications (which includes installed applications as well as applications with data directory i.e. applications which had been deleted with DELETE_KEEP_DATA flag set).
This value cannot be null.

getPermissionGroupInfo

Added in API level 1
public PermissionGroupInfo getPermissionGroupInfo (String name, 
                int flags)

Retrieve all of the information we know about a particular group of permissions.

Parameters
name String: The fully qualified name (i.e. com.google.permission_group.APPS) of the permission you are interested in.
This value cannot be null.

flags int: Additional option flags to modify the data returned.
Value is either 0 or
Returns
PermissionGroupInfo Returns a PermissionGroupInfo containing information about the permission.
This value cannot be null.

Throws
PackageManager.NameNotFoundException

getPermissionInfo

Added in API level 1
public PermissionInfo getPermissionInfo (String name, 
                int flags)

Retrieve all of the information we know about a particular permission.

Parameters
name String: The fully qualified name (i.e. com.google.permission.LOGIN) of the permission you are interested in.
This value cannot be null.

flags int: Additional option flags to modify the data returned.
Value is either 0 or
Returns
PermissionInfo Returns a PermissionInfo containing information about the permission.

Throws
PackageManager.NameNotFoundException

getPreferredActivities

Added in API level 1
public int getPreferredActivities (List<IntentFilter> outFilters, 
                List<ComponentName> outActivities, 
                String packageName)

This method is deprecated.
This function no longer does anything. It is the platform's responsibility to assign preferred activities and this cannot be modified directly. To determine the activities resolved by the platform, use resolveActivity(Intent, ResolveInfoFlags) or queryIntentActivities(Intent, ResolveInfoFlags). To configure an app to be responsible for a particular role and to check current role holders, see RoleManager.

Retrieve all preferred activities, previously added with addPreferredActivity(IntentFilter, int, ComponentName, ComponentName), that are currently registered with the system.

Parameters
outFilters List: A required list in which to place the filters of all of the preferred activities.
This value cannot be null.

outActivities List: A required list in which to place the component names of all of the preferred activities.
This value cannot be null.

packageName String: An optional package in which you would like to limit the list. If null, all activities will be returned; if non-null, only those activities in the given package are returned.

Returns
int Returns the total number of registered preferred activities (the number of distinct IntentFilter records, not the number of unique activity components) that were found.

getPreferredPackages

Added in API level 1
public List<PackageInfo> getPreferredPackages (int flags)

This method is deprecated.
This function no longer does anything. It is the platform's responsibility to assign preferred activities and this cannot be modified directly. To determine the activities resolved by the platform, use resolveActivity(Intent, ResolveInfoFlags) or queryIntentActivities(Intent, ResolveInfoFlags). To configure an app to be responsible for a particular role and to check current role holders, see RoleManager.

Retrieve the list of all currently configured preferred packages. The first package on the list is the most preferred, the last is the least preferred.

Parameters
flags int: Additional option flags to modify the data returned.

Returns
List<PackageInfo> A List of PackageInfo objects, one for each preferred application, in order of preference.
This value cannot be null.

getProviderInfo

Added in API level 9
Deprecated in API level 24
public ProviderInfo getProviderInfo (ComponentName className, 
                int flags)

Retrieve all of the information we know about a particular content provider class. Use getProviderInfo(ComponentName,ComponentInfoFlags) when long flags are needed.

Parameters
className ComponentName: The full component name (i.e. com.google.providers.media/com.google.providers.media. MediaProvider) of a ContentProvider class.
This value cannot be null.

flags int: Additional option flags to modify the data returned.

Returns
ProviderInfo A ProviderInfo object containing information about the provider.
This value cannot be null.

Throws
PackageManager.NameNotFoundException

getReceiverInfo

Added in API level 1
public ActivityInfo getReceiverInfo (ComponentName className, 
                int flags)

Retrieve all of the information we know about a particular receiver class. Use getReceiverInfo(ComponentName,ComponentInfoFlags) when long flags are needed.

Parameters
className ComponentName: The full component name (i.e. com.google.apps.calendar/com.google.apps.calendar. CalendarAlarm) of a Receiver class.
This value cannot be null.

flags int: Additional option flags to modify the data returned.

Returns
ActivityInfo An ActivityInfo containing information about the receiver.
This value cannot be null.

Throws
PackageManager.NameNotFoundException

getResourcesForActivity

Added in API level 1
public Resources getResourcesForActivity (ComponentName activityName)

Retrieve the resources associated with an activity. Given the full name of an activity, retrieves the information about it and calls getResources() to return its application's resources. If the activity cannot be found, NameNotFoundException is thrown.

Parameters
activityName ComponentName: Name of the activity whose resources are to be retrieved.
This value cannot be null.

Returns
Resources Returns the application's Resources.
This value cannot be null.

Throws
PackageManager.NameNotFoundException

getResourcesForApplication

Added in API level 1
public Resources getResourcesForApplication (ApplicationInfo app)

Retrieve the resources for an application. Throws NameNotFoundException if the package is no longer installed.

Parameters
app ApplicationInfo: Information about the desired application.
This value cannot be null.

Returns
Resources Returns the application's Resources.
This value cannot be null.

getResourcesForApplication

Added in API level 1
public Resources getResourcesForApplication (String appPackageName)

Retrieve the resources associated with an application. Given the full package name of an application, retrieves the information about it and calls getResources() to return its application's resources. If the appPackageName cannot be found, NameNotFoundException is thrown.

Parameters
appPackageName String: Package name of the application whose resources are to be retrieved.
This value cannot be null.

Returns
Resources Returns the application's Resources.
This value cannot be null.

Throws
PackageManager.NameNotFoundException

getServiceInfo

Added in API level 1
public ServiceInfo getServiceInfo (ComponentName className, 
                int flags)

Retrieve all of the information we know about a particular service class. Use getServiceInfo(ComponentName,ComponentInfoFlags) when long flags are needed.

Parameters
className ComponentName: The full component name (i.e. com.google.apps.media/com.google.apps.media. BackgroundPlayback) of a Service class.
This value cannot be null.

flags int: Additional option flags to modify the data returned.

Returns
ServiceInfo A ServiceInfo object containing information about the service.
This value cannot be null.

Throws
PackageManager.NameNotFoundException

getSharedLibraries

Added in API level 26
Deprecated in API level 24
public List<SharedLibraryInfo> getSharedLibraries (int flags)

Get a list of shared libraries on the device. Use getSharedLibraries(PackageInfoFlags) when long flags are needed.

Parameters
flags int: To filter the libraries to return.

Returns
List<SharedLibraryInfo> This value cannot be null.

getS