IT. Expert System.

Android Reference

PackageManager


android.content.pm

Class PackageManager

  • Direct Known Subclasses:
    MockPackageManager


    public abstract class PackageManager
    extends Object
    Class for retrieving various kinds of information related to the application packages that are currently installed on the device. You can find this class through Context.getPackageManager().
    • Constructor Detail

      • PackageManager

        public PackageManager()
    • Method Detail

      • currentToCanonicalPackageNames

        public abstract 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 - Array of current names to be mapped.
        Returns:
        Returns an array of the same size as the original, containing the canonical name for each package.
      • canonicalToCurrentPackageNames

        public abstract String[] canonicalToCurrentPackageNames(String[] names)
        Map from a packages canonical name to the current name in use on the device.
        Parameters:
        names - Array of new names to be mapped.
        Returns:
        Returns an array of the same size as the original, containing the current name for each package.
      • getLaunchIntentForPackage

        public abstract Intent getLaunchIntentForPackage(String packageName)
        Return a "good" intent to launch a front-door activity in a package, for use for example to implement an "open" button when browsing through packages. The current implementation will look first for a main activity in the category Intent.CATEGORY_INFO, next for a main activity in the category Intent.CATEGORY_LAUNCHER, or return null if neither are found.

        Throws PackageManager.NameNotFoundException if a package with the given name can not be found on the system.

        Parameters:
        packageName - The name of the package to inspect.
        Returns:
        Returns either a fully-qualified Intent that can be used to launch the main activity in the package, or null if the package does not contain such an activity.
      • getAllPermissionGroups

        public abstract List<PermissionGroupInfo> getAllPermissionGroups(int flags)
        Retrieve all of the known permission groups in the system.
        Parameters:
        flags - Additional option flags. Use GET_META_DATA to retrieve any meta-data associated with the permission group.
        Returns:
        Returns a list of PermissionGroupInfo containing information about all of the known permission groups.
      • checkPermission

        public abstract int checkPermission(String permName,
                          String pkgName)
        Check whether a particular package has been granted a particular permission.
        Parameters:
        permName - The name of the permission you are checking for,
        pkgName - The name of the package you are checking against.
        Returns:
        If the package has the permission, PERMISSION_GRANTED is returned. If it does not have the permission, PERMISSION_DENIED is returned.
        See Also:
        PERMISSION_GRANTED, PERMISSION_DENIED
      • addPermission

        public abstract 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 - Description of the permission to be added.
        Returns:
        Returns true if a new permission was created, false if an existing one was updated.
        Throws:
        SecurityException - if you are not allowed to add the given permission name.
        See Also:
        removePermission(String)
      • addPermissionAsync

        public abstract 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.
      • removePermission

        public abstract void removePermission(String name)
        Removes a permission that was previously added with addPermission(PermissionInfo). The same ownership rules apply -- you are only allowed to remove permissions that you are allowed to add.
        Parameters:
        name - The name of the permission to remove.
        Throws:
        SecurityException - if you are not allowed to remove the given permission name.
        See Also:
        addPermission(PermissionInfo)
      • grantPermission

        public abstract void grantPermission(String packageName,
                           String permissionName)
        Grant a permission to an application which the application does not already have. The permission must have been requested by the application, but as an optional permission. If the application is not allowed to hold the permission, a SecurityException is thrown.
        Parameters:
        packageName - The name of the package that the permission will be granted to.
        permissionName - The name of the permission.
      • revokePermission

        public abstract void revokePermission(String packageName,
                            String permissionName)
        Revoke a permission that was previously granted by grantPermission(java.lang.String, java.lang.String).
        Parameters:
        packageName - The name of the package that the permission will be granted to.
        permissionName - The name of the permission.
      • checkSignatures

        public abstract 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 - First package name whose signature will be compared.
        pkg2 - Second package name whose signature will be compared.
        Returns:
        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).
        See Also:
        checkSignatures(int, int), SIGNATURE_MATCH, SIGNATURE_NO_MATCH, SIGNATURE_UNKNOWN_PACKAGE
      • getPackagesForUid

        public abstract 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 - The user id for which you would like to retrieve the associated packages.
        Returns:
        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.
      • getNameForUid

        public abstract String getNameForUid(int uid)
        Retrieve the official name associated with a user id. This name is guaranteed to never change, though it is possibly for the underlying user id to be changed. That is, if you are storing information about user ids in persistent storage, you should use the string returned by this function instead of the raw user-id.
        Parameters:
        uid - The user id for which you would like to retrieve a name.
        Returns:
        Returns a unique name for the given user id, or null if the user id is not currently assigned.
      • getUidForSharedUser

        public abstract int getUidForSharedUser(String sharedUserName)
                                         throws PackageManager.NameNotFoundException
        Return the user id associated with a shared user name. Multiple applications can specify a shared user name in their manifest and thus end up using a common uid. This might be used for new applications that use an existing shared user name and need to know the uid of the shared user.
        Parameters:
        sharedUserName - The shared user name whose uid is to be retrieved.
        Returns:
        Returns the uid associated with the shared user, or NameNotFoundException if the shared user name is not being used by any installed packages
        Throws:
        PackageManager.NameNotFoundException
      • getInstalledApplications

        public abstract List<ApplicationInfo> getInstalledApplications(int flags)
        Return a List of all application packages that are installed on the device. If flag GET_UNINSTALLED_PACKAGES has been set, a list of all applications including those deleted with DONT_DELETE_DATA(partially installed apps with data directory) will be returned.
        Parameters:
        flags - Additional option flags. Use any combination of GET_META_DATA, GET_SHARED_LIBRARY_FILES, GET_UNINSTALLED_PACKAGES to modify the data returned.
        Returns:
        A List of ApplicationInfo objects, one for each application that is installed on the device. In the unlikely case of there being no installed applications, an empty list is returned. If flag GET_UNINSTALLED_PACKAGES is set, a list of all applications including those deleted with DONT_DELETE_DATA (partially installed apps with data directory) will be returned.
        See Also:
        GET_META_DATA, GET_SHARED_LIBRARY_FILES, GET_UNINSTALLED_PACKAGES
      • getSystemSharedLibraryNames

        public abstract String[] getSystemSharedLibraryNames()
        Get a list of shared libraries that are available on the system.
        Returns:
        An array of shared library names that are available on the system, or null if none are installed.
      • getSystemAvailableFeatures

        public abstract FeatureInfo[] getSystemAvailableFeatures()
        Get a list of features that are available on the system.
        Returns:
        An array of FeatureInfo classes describing the features that are available on the system, or null if there are none(!!).
      • hasSystemFeature

        public abstract boolean hasSystemFeature(String name)
        Check whether the given feature name is one of the available features as returned by getSystemAvailableFeatures().
        Returns:
        Returns true if the devices supports the feature, else false.
      • resolveActivityAsUser

        public abstract ResolveInfo resolveActivityAsUser(Intent intent,
                                        int flags,
                                        int userId)
        Determine the best action to perform for a given Intent for a given user. This is how Intent.resolveActivity(android.content.pm.PackageManager) finds an activity if a class has not been explicitly specified.

        Note: if using an implicit Intent (without an explicit ComponentName specified), be sure to consider whether to set the MATCH_DEFAULT_ONLY only flag. You need to do so to resolve the activity in the same way that Context.startActivity(Intent) and Intent.resolveActivity(PackageManager) do.

        Parameters:
        intent - An intent containing all of the desired specification (action, data, type, category, and/or component).
        flags - Additional option flags. The most important is MATCH_DEFAULT_ONLY, to limit the resolution to only those activities that support the Intent.CATEGORY_DEFAULT.
        userId - The user id.
        Returns:
        Returns a ResolveInfo containing the final activity intent that was determined to be the best action. Returns null if no matching activity was found. If multiple matching activities are found and there is no default set, returns a ResolveInfo containing something else, such as the activity resolver.
        See Also:
        MATCH_DEFAULT_ONLY, GET_INTENT_FILTERS, GET_RESOLVED_FILTER
      • queryIntentActivitiesAsUser

        public abstract List<ResolveInfo> queryIntentActivitiesAsUser(Intent intent,
                                                    int flags,
                                                    int userId)
        Retrieve all activities that can be performed for the given intent, for a specific user.
        Parameters:
        intent - The desired intent as per resolveActivity().
        flags - Additional option flags. The most important is MATCH_DEFAULT_ONLY, to limit the resolution to only those activities that support the Intent.CATEGORY_DEFAULT.
        Returns:
        A List<ResolveInfo> containing one entry for each matching Activity. These are ordered from best to worst match -- that is, the first item in the list is what is returned by resolveActivity(android.content.Intent, int). If there are no matching activities, an empty list is returned.
        See Also:
        MATCH_DEFAULT_ONLY, GET_INTENT_FILTERS, GET_RESOLVED_FILTER
      • queryIntentActivityOptions

        public abstract 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. This is like queryIntentActivities(android.content.Intent, int), except it also allows you to supply a list of more explicit Intents that you would like to resolve to particular options, and takes care of returning the final ResolveInfo list in a reasonable order, with no duplicates, based on those inputs.
        Parameters:
        caller - The class name of the activity that is making the request. This activity will never appear in the output list. Can be null.
        specifics - An array of Intents that should be resolved to the first specific results. Can be null.
        intent - The desired intent as per resolveActivity().
        flags - Additional option flags. The most important is MATCH_DEFAULT_ONLY, to limit the resolution to only those activities that support the Intent.CATEGORY_DEFAULT.
        Returns:
        A List<ResolveInfo> containing one entry for each matching Activity. These are ordered first by all of the intents resolved in specifics and then any additional activities that can handle intent but did not get included by one of the specifics intents. If there are no matching activities, an empty list is returned.
        See Also:
        MATCH_DEFAULT_ONLY, GET_INTENT_FILTERS, GET_RESOLVED_FILTER
      • queryBroadcastReceivers

        public abstract List<ResolveInfo> queryBroadcastReceivers(Intent intent,
                                                int flags)
        Retrieve all receivers that can handle a broadcast of the given intent.
        Parameters:
        intent - The desired intent as per resolveActivity().
        flags - Additional option flags.
        Returns:
        A List<ResolveInfo> containing one entry for each matching Receiver. These are ordered from first to last in priority. If there are no matching receivers, an empty list is returned.
        See Also:
        MATCH_DEFAULT_ONLY, GET_INTENT_FILTERS, GET_RESOLVED_FILTER
      • queryBroadcastReceivers

        public abstract List<ResolveInfo> queryBroadcastReceivers(Intent intent,
                                                int flags,
                                                int userId)
        Retrieve all receivers that can handle a broadcast of the given intent, for a specific user.
        Parameters:
        intent - The desired intent as per resolveActivity().
        flags - Additional option flags.
        userId - The userId of the user being queried.
        Returns:
        A List<ResolveInfo> containing one entry for each matching Receiver. These are ordered from first to last in priority. If there are no matching receivers, an empty list is returned.
        See Also:
        MATCH_DEFAULT_ONLY, GET_INTENT_FILTERS, GET_RESOLVED_FILTER
      • resolveService

        public abstract ResolveInfo resolveService(Intent intent,
                                 int flags)
        Determine the best service to handle for a given Intent.
        Parameters:
        intent - An intent containing all of the desired specification (action, data, type, category, and/or component).
        flags - Additional option flags.
        Returns:
        Returns a ResolveInfo containing the final service intent that was determined to be the best action. Returns null if no matching service was found.
        See Also:
        GET_INTENT_FILTERS, GET_RESOLVED_FILTER
      • queryIntentServices

        public abstract List<ResolveInfo> queryIntentServices(Intent intent,
                                            int flags)
        Retrieve all services that can match the given intent.
        Parameters:
        intent - The desired intent as per resolveService().
        flags - Additional option flags.
        Returns:
        A List<ResolveInfo> containing one entry for each matching ServiceInfo. These are ordered from best to worst match -- that is, the first item in the list is what is returned by resolveService(). If there are no matching services, an empty list is returned.
        See Also:
        GET_INTENT_FILTERS, GET_RESOLVED_FILTER
      • queryIntentServicesAsUser

        public abstract List<ResolveInfo> queryIntentServicesAsUser(Intent intent,
                                                  int flags,
                                                  int userId)
        Retrieve all services that can match the given intent for a given user.
        Parameters:
        intent - The desired intent as per resolveService().
        flags - Additional option flags.
        userId - The user id.
        Returns:
        A List<ResolveInfo> containing one entry for each matching ServiceInfo. These are ordered from best to worst match -- that is, the first item in the list is what is returned by resolveService(). If there are no matching services, an empty list is returned.
        See Also:
        GET_INTENT_FILTERS, GET_RESOLVED_FILTER
      • resolveContentProvider

        public abstract ProviderInfo resolveContentProvider(String name,
                                          int flags)
        Find a single content provider by its base path name.
        Parameters:
        name - The name of the provider to find.
        flags - Additional option flags. Currently should always be 0.
        Returns:
        ContentProviderInfo Information about the provider, if found, else null.
      • queryContentProviders

        public abstract List<ProviderInfo> queryContentProviders(String processName,
                                               int uid,
                                               int flags)
        Retrieve content provider information.

        Note: unlike most other methods, an empty result set is indicated by a null return instead of an empty list.

        Parameters:
        processName - If non-null, limits the returned providers to only those that are hosted by the given process. If null, all content providers are returned.
        uid - If processName is non-null, this is the required uid owning the requested content providers.
        flags - Additional option flags. Currently should always be 0.
        Returns:
        A List<ContentProviderInfo> containing one entry for each content provider either patching processName or, if processName is null, all known content providers. If there are no matching providers, null is returned.
      • queryInstrumentation

        public abstract List<InstrumentationInfo> queryInstrumentation(String targetPackage,
                                                     int flags)
        Retrieve information about available instrumentation code. May be used to retrieve either all instrumentation code, or only the code targeting a particular package.
        Parameters:
        targetPackage - If null, all instrumentation is returned; only the instrumentation targeting this package name is returned.
        flags - Additional option flags. Currently should always be 0.
        Returns:
        A List<InstrumentationInfo> containing one entry for each matching available Instrumentation. Returns an empty list if there is no instrumentation available for the given package.
      • getDrawable

        public abstract 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 - The name of the package that this icon is coming from. Can not be null.
        resid - The resource identifier of the desired image. Can not be 0.
        appInfo - 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:
        Returns a Drawable holding the requested image. Returns null if an image could not be found for any reason.
      • getActivityIcon

        public abstract Drawable getActivityIcon(ComponentName activityName)
                                          throws PackageManager.NameNotFoundException
        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 can not be found, NameNotFoundException is thrown.
        Parameters:
        activityName - Name of the activity whose icon is to be retrieved.
        Returns:
        Returns the image of the icon, or the default activity icon if it could not be found. Does not return null.
        Throws:
        PackageManager.NameNotFoundException - Thrown if the resources for the given activity could not be loaded.
        See Also:
        getActivityIcon(Intent)
      • getActivityIcon

        public abstract Drawable getActivityIcon(Intent intent)
                                          throws PackageManager.NameNotFoundException
        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() can not be found or the Intent can not be resolved to a component, NameNotFoundException is thrown.
        Parameters:
        intent - The intent for which you would like to retrieve an icon.
        Returns:
        Returns the image of the icon, or the default activity icon if it could not be found. Does not return null.
        Throws:
        PackageManager.NameNotFoundException - Thrown if the resources for application matching the given intent could not be loaded.
        See Also:
        getActivityIcon(ComponentName)
      • getDefaultActivityIcon

        public abstract Drawable getDefaultActivityIcon()
        Return the generic icon for an activity that is used when no specific icon is defined.
        Returns:
        Drawable Image of the icon.
      • getApplicationIcon

        public abstract 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 - Information about application being queried.
        Returns:
        Returns the image of the icon, or the default application icon if it could not be found.
        See Also:
        getApplicationIcon(String)
      • getApplicationIcon

        public abstract Drawable getApplicationIcon(String packageName)
                                             throws PackageManager.NameNotFoundException
        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 can not be found, NameNotFoundException is thrown.
        Parameters:
        packageName - Name of the package whose application icon is to be retrieved.
        Returns:
        Returns the image of the icon, or the default application icon if it could not be found. Does not return null.
        Throws:
        PackageManager.NameNotFoundException - Thrown if the resources for the given application could not be loaded.
        See Also:
        getApplicationIcon(ApplicationInfo)
      • getActivityLogo

        public abstract Drawable getActivityLogo(Intent intent)
                                          throws PackageManager.NameNotFoundException
        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() can not be found or the Intent can not be resolved to a component, NameNotFoundException is thrown.
        Parameters:
        intent - The intent for which you would like to retrieve a logo.
        Returns:
        Returns the image of the logo, or null if the activity has no logo specified.
        Throws:
        PackageManager.NameNotFoundException - Thrown if the resources for application matching the given intent could not be loaded.
        See Also:
        getActivityLogo(ComponentName)
      • getApplicationLogo

        public abstract Drawable getApplicationLogo(ApplicationInfo info)
        Retrieve the logo associated with an application. If it has not specified a logo, this method returns null.
        Parameters:
        info - Information about application being queried.
        Returns:
        Returns the image of the logo, or null if no logo is specified by the application.
        See Also:
        getApplicationLogo(String)
      • getApplicationLogo

        public abstract Drawable getApplicationLogo(String packageName)
                                             throws PackageManager.NameNotFoundException
        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 can not be found, NameNotFoundException is thrown.
        Parameters:
        packageName - Name of the package whose application logo is to be retrieved.
        Returns:
        Returns the image of the logo, or null if no application logo has been specified.
        Throws:
        PackageManager.NameNotFoundException - Thrown if the resources for the given application could not be loaded.
        See Also:
        getApplicationLogo(ApplicationInfo)
      • getText

        public abstract CharSequence getText(String packageName,
                           int resid,
                           ApplicationInfo appInfo)
        Retrieve text 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 labels and other text.
        Parameters:
        packageName - The name of the package that this text is coming from. Can not be null.
        resid - The resource identifier of the desired text. Can not be 0.
        appInfo - 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:
        Returns a CharSequence holding the requested text. Returns null if the text could not be found for any reason.
      • getXml

        public abstract XmlResourceParser getXml(String packageName,
                               int resid,
                               ApplicationInfo appInfo)
        Retrieve an XML file from a package. This is a low-level API used to retrieve XML meta data.
        Parameters:
        packageName - The name of the package that this xml is coming from. Can not be null.
        resid - The resource identifier of the desired xml. Can not be 0.
        appInfo - 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:
        Returns an XmlPullParser allowing you to parse out the XML data. Returns null if the xml resource could not be found for any reason.
      • getApplicationLabel

        public abstract CharSequence getApplicationLabel(ApplicationInfo info)
        Return the label to use for this application.
        Parameters:
        info - The application to get the label of
        Returns:
        Returns the label associated with this application, or null if it could not be found for any reason.
      • getResourcesForActivity

        public abstract Resources getResourcesForActivity(ComponentName activityName)
                                                   throws PackageManager.NameNotFoundException
        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 can not be found, NameNotFoundException is thrown.
        Parameters:
        activityName - Name of the activity whose resources are to be retrieved.
        Returns:
        Returns the application's Resources.
        Throws:
        PackageManager.NameNotFoundException - Thrown if the resources for the given application could not be loaded.
        See Also:
        getResourcesForApplication(ApplicationInfo)
      • getResourcesForApplication

        public abstract Resources getResourcesForApplication(ApplicationInfo app)
                                                      throws PackageManager.NameNotFoundException
        Retrieve the resources for an application. Throws NameNotFoundException if the package is no longer installed.
        Parameters:
        app - Information about the desired application.
        Returns:
        Returns the application's Resources.
        Throws:
        PackageManager.NameNotFoundException - Thrown if the resources for the given application could not be loaded (most likely because it was uninstalled).
      • getResourcesForApplication

        public abstract Resources getResourcesForApplication(String appPackageName)
                                                      throws PackageManager.NameNotFoundException
        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 can not be found, NameNotFoundException is thrown.
        Parameters:
        appPackageName - Package name of the application whose resources are to be retrieved.
        Returns:
        Returns the application's Resources.
        Throws:
        PackageManager.NameNotFoundException - Thrown if the resources for the given application could not be loaded.
        See Also:
        getResourcesForApplication(ApplicationInfo)
      • installPackage

        public abstract void installPackage(Uri packageURI,
                          IPackageInstallObserver observer,
                          int flags,
                          String installerPackageName)
        Parameters:
        packageURI - The location of the package file to install. This can be a 'file:' or a 'content:' URI.
        observer - An observer callback to get notified when the package installation is complete. IPackageInstallObserver#packageInstalled(String, int) will be called when that happens. observer may be null to indicate that no callback is desired.
        flags - - possible values: INSTALL_FORWARD_LOCK, INSTALL_REPLACE_EXISTING, INSTALL_ALLOW_TEST.
        installerPackageName - Optional package name of the application that is performing the installation. This identifies which market the package came from.
      • installPackageWithVerification

        public abstract void installPackageWithVerification(Uri packageURI,
                                          IPackageInstallObserver observer,
                                          int flags,
                                          String installerPackageName,
                                          Uri verificationURI,
                                          ManifestDigest manifestDigest,
                                          ContainerEncryptionParams encryptionParams)
        Similar to installPackage(Uri, IPackageInstallObserver, int, String) but with an extra verification file provided.
        Parameters:
        packageURI - The location of the package file to install. This can be a 'file:' or a 'content:' URI.
        observer - An observer callback to get notified when the package installation is complete. IPackageInstallObserver#packageInstalled(String, int) will be called when that happens. observer may be null to indicate that no callback is desired.
        flags - - possible values: INSTALL_FORWARD_LOCK, INSTALL_REPLACE_EXISTING, INSTALL_ALLOW_TEST .
        installerPackageName - Optional package name of the application that is performing the installation. This identifies which market the package came from.
        verificationURI - The location of the supplementary verification file. This can be a 'file:' or a 'content:' URI. May be null.
        manifestDigest - an object that holds the digest of the package which can be used to verify ownership. May be null.
        encryptionParams - if the package to be installed is encrypted, these parameters describing the encryption and authentication used. May be null.
      • installPackageWithVerificationAndEncryption

        public abstract void installPackageWithVerificationAndEncryption(Uri packageURI,
                                                       IPackageInstallObserver observer,
                                                       int flags,
                                                       String installerPackageName,
                                                       VerificationParams verificationParams,
                                                       ContainerEncryptionParams encryptionParams)
        Similar to installPackage(Uri, IPackageInstallObserver, int, String) but with an extra verification information provided.
        Parameters:
        packageURI - The location of the package file to install. This can be a 'file:' or a 'content:' URI.
        observer - An observer callback to get notified when the package installation is complete. IPackageInstallObserver#packageInstalled(String, int) will be called when that happens. observer may be null to indicate that no callback is desired.
        flags - - possible values: INSTALL_FORWARD_LOCK, INSTALL_REPLACE_EXISTING, INSTALL_ALLOW_TEST .
        installerPackageName - Optional package name of the application that is performing the installation. This identifies which market the package came from.
        verificationParams - an object that holds signal information to assist verification. May be null.
        encryptionParams - if the package to be installed is encrypted, these parameters describing the encryption and authentication used. May be null.
      • setInstallerPackageName

        public abstract void setInstallerPackageName(String targetPackage,
                                   String installerPackageName)
        Change the installer associated with a given package. There are limitations on how the installer package can be changed; in particular:
        • A SecurityException will be thrown if installerPackageName is not signed with the same certificate as the calling application.
        • A SecurityException will be thrown if targetPackage already has an installer package, and that installer package is not signed with the same certificate as the calling application.
        Parameters:
        targetPackage - The installed package whose installer will be changed.
        installerPackageName - The package name of the new installer. May be null to clear the association.
      • deletePackage

        public abstract void deletePackage(String packageName,
                         IPackageDeleteObserver observer,
                         int flags)
        Attempts to delete a package. Since this may take a little while, the result will be posted back to the given observer. A deletion will fail if the calling context lacks the android.Manifest.permission#DELETE_PACKAGES permission, if the named package cannot be found, or if the named package is a "system package". (TODO: include pointer to documentation on "system packages")
        Parameters:
        packageName - The name of the package to delete
        observer - An observer callback to get notified when the package deletion is complete. android.content.pm.IPackageDeleteObserver#packageDeleted(boolean) will be called when that happens. observer may be null to indicate that no callback is desired.
        flags - - possible values: DELETE_KEEP_DATA, DELETE_ALL_USERS.
      • getInstallerPackageName

        public abstract String getInstallerPackageName(String packageName)
        Retrieve the package name of the application that installed a package. This identifies which market the package came from.
        Parameters:
        packageName - The name of the package to query
      • clearApplicationUserData

        public abstract void clearApplicationUserData(String packageName,
                                    IPackageDataObserver observer)
        Attempts to clear the user data directory of an application. Since this may take a little while, the result will be posted back to the given observer. A deletion will fail if the named package cannot be found, or if the named package is a "system package".
        Parameters:
        packageName - The name of the package
        observer - An observer callback to get notified when the operation is finished android.content.pm.IPackageDataObserver#onRemoveCompleted(String, boolean) will be called when that happens. observer may be null to indicate that no callback is desired.
      • deleteApplicationCacheFiles

        public abstract void deleteApplicationCacheFiles(String packageName,
                                       IPackageDataObserver observer)
        Attempts to delete the cache files associated with an application. Since this may take a little while, the result will be posted back to the given observer. A deletion will fail if the calling context lacks the android.Manifest.permission#DELETE_CACHE_FILES permission, if the named package cannot be found, or if the named package is a "system package".
        Parameters:
        packageName - The name of the package to delete
        observer - An observer callback to get notified when the cache file deletion is complete. android.content.pm.IPackageDataObserver#onRemoveCompleted(String, boolean) will be called when that happens. observer may be null to indicate that no callback is desired.
      • freeStorageAndNotify

        public abstract void freeStorageAndNotify(long freeStorageSize,
                                IPackageDataObserver observer)
        Free storage by deleting LRU sorted list of cache files across all applications. If the currently available free storage on the device is greater than or equal to the requested free storage, no cache files are cleared. If the currently available storage on the device is less than the requested free storage, some or all of the cache files across all applications are deleted (based on last accessed time) to increase the free storage space on the device to the requested value. There is no guarantee that clearing all the cache files from all applications will clear up enough storage to achieve the desired value.
        Parameters:
        freeStorageSize - The number of bytes of storage to be freed by the system. Say if freeStorageSize is XX, and the current free storage is YY, if XX is less than YY, just return. if not free XX-YY number of bytes if possible.
        observer - call back used to notify when the operation is completed
      • freeStorage

        public abstract void freeStorage(long freeStorageSize,
                       IntentSender pi)
        Free storage by deleting LRU sorted list of cache files across all applications. If the currently available free storage on the device is greater than or equal to the requested free storage, no cache files are cleared. If the currently available storage on the device is less than the requested free storage, some or all of the cache files across all applications are deleted (based on last accessed time) to increase the free storage space on the device to the requested value. There is no guarantee that clearing all the cache files from all applications will clear up enough storage to achieve the desired value.
        Parameters:
        freeStorageSize - The number of bytes of storage to be freed by the system. Say if freeStorageSize is XX, and the current free storage is YY, if XX is less than YY, just return. if not free XX-YY number of bytes if possible.
        pi - IntentSender call back used to notify when the operation is completed.May be null to indicate that no call back is desired.
      • getPackageSizeInfo

        public abstract void getPackageSizeInfo(String packageName,
                              int userHandle,
                              IPackageStatsObserver observer)
        Retrieve the size information for a package. Since this may take a little while, the result will be posted back to the given observer. The calling context should have the android.Manifest.permission#GET_PACKAGE_SIZE permission.
        Parameters:
        packageName - The name of the package whose size information is to be retrieved
        userHandle - The user whose size information should be retrieved.
        observer - An observer callback to get notified when the operation is complete. android.content.pm.IPackageStatsObserver#onGetStatsCompleted(PackageStats, boolean) The observer's callback is invoked with a PackageStats object(containing the code, data and cache sizes of the package) and a boolean value representing the status of the operation. observer may be null to indicate that no callback is desired.
      • addPackageToPreferred

        @Deprecated
        public abstract void addPackageToPreferred(String packageName)
        Deprecated. This function no longer does anything; it was an old approach to managing preferred activities, which has been superceeded (and conflicts with) the modern activity-based preferences.
      • removePackageFromPreferred

        @Deprecated
        public abstract void removePackageFromPreferred(String packageName)
        Deprecated. This function no longer does anything; it was an old approach to managing preferred activities, which has been superceeded (and conflicts with) the modern activity-based preferences.
      • addPreferredActivity

        @Deprecated
        public abstract void addPreferredActivity(IntentFilter filter,
                                           int match,
                                           ComponentName[] set,
                                           ComponentName activity)
        Deprecated. This is a protected API that should not have been available to third party applications. It is the platform's responsibility for assigning preferred activities and this can not be directly modified. 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 - The set of intents under which this activity will be made preferred.
        match - The IntentFilter match category that this preference applies to.
        set - The set of activities that the user was picking from when this preference was made.
        activity - The component name of the activity that is to be preferred.
      • replacePreferredActivity

        @Deprecated
        public abstract void replacePreferredActivity(IntentFilter filter,
                                               int match,
                                               ComponentName[] set,
                                               ComponentName activity)
        Deprecated. This is a protected API that should not have been available to third party applications. It is the platform's responsibility for assigning preferred activities and this can not be directly modified. Replaces an existing preferred activity mapping to the system, and if that were not present adds a new preferred activity. 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 - The set of intents under which this activity will be made preferred.
        match - The IntentFilter match category that this preference applies to.
        set - The set of activities that the user was picking from when this preference was made.
        activity - The component name of the activity that is to be preferred.
      • getPreferredActivities

        public abstract int getPreferredActivities(List<IntentFilter> outFilters,
                                 List<ComponentName> outActivities,
                                 String packageName)
        Retrieve all preferred activities, previously added with addPreferredActivity(android.content.IntentFilter, int, android.content.ComponentName[], android.content.ComponentName), that are currently registered with the system.
        Parameters:
        outFilters - A list in which to place the filters of all of the preferred activities, or null for none.
        outActivities - A list in which to place the component names of all of the preferred activities, or null for none.
        packageName - An option 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:
        Returns the total number of registered preferred activities (the number of distinct IntentFilter records, not the number of unique activity components) that were found.
      • setComponentEnabledSetting

        public abstract void setComponentEnabledSetting(ComponentName componentName,
                                      int newState,
                                      int flags)
        Set the enabled setting for a package component (activity, receiver, service, provider). This setting will override any enabled state which may have been set by the component in its manifest.
        Parameters:
        componentName - The component to enable
        newState - The new enabled state for the component. The legal values for this state are: COMPONENT_ENABLED_STATE_ENABLED, COMPONENT_ENABLED_STATE_DISABLED and COMPONENT_ENABLED_STATE_DEFAULT The last one removes the setting, thereby restoring the component's state to whatever was set in it's manifest (or enabled, by default).
        flags - Optional behavior flags: DONT_KILL_APP or 0.
      • setApplicationEnabledSetting

        public abstract 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. It also overrides the enabled state set in the manifest for any of the application's components. It does not override any enabled state set by setComponentEnabledSetting(android.content.ComponentName, int, int) for any of the application's components.
        Parameters:
        packageName - The package name of the application to enable
        newState - The new enabled state for the component. The legal values for this state are: COMPONENT_ENABLED_STATE_ENABLED, COMPONENT_ENABLED_STATE_DISABLED and COMPONENT_ENABLED_STATE_DEFAULT The last one removes the setting, thereby restoring the applications's state to whatever was set in its manifest (or enabled, by default).
        flags - Optional behavior flags: DONT_KILL_APP or 0.
      • isSafeMode

        public abstract boolean isSafeMode()
        Return whether the device has been booted into safe mode.
      • movePackage

        public abstract void movePackage(String packageName,
                       IPackageMoveObserver observer,
                       int flags)
        Attempts to move package resources from internal to external media or vice versa. Since this may take a little while, the result will be posted back to the given observer. This call may fail if the calling context lacks the android.Manifest.permission#MOVE_PACKAGE permission, if the named package cannot be found, or if the named package is a "system package".
        Parameters:
        packageName - The name of the package to delete
        observer - An observer callback to get notified when the package move is complete. android.content.pm.IPackageMoveObserver#packageMoved(boolean) will be called when that happens. observer may be null to indicate that no callback is desired.
        flags - To indicate install location MOVE_INTERNAL or MOVE_EXTERNAL_MEDIA
      • getVerifierDeviceIdentity

        public abstract VerifierDeviceIdentity getVerifierDeviceIdentity()
        Returns the device identity that verifiers can use to associate their scheme to a particular device. This should not be used by anything other than a package verifier.
        Returns:
        identity that uniquely identifies current device
      • getDataDirForUser

        public static String getDataDirForUser(int userId,
                               String packageName)
        Returns the data directory for a particular user and package, given the uid of the package.
        Parameters:
        uid - uid of the package, including the userId and appId
        packageName - name of the package
        Returns:
        the user-specific data directory for the package


Content

Android Reference

Java basics

Java Enterprise Edition (EE)

Java Standard Edition (SE)

SQL

HTML

PHP

CSS

Java Script

MYSQL

JQUERY

VBS

REGEX

C

C++

C#

Design patterns

RFC (standard status)

RFC (proposed standard status)

RFC (draft standard status)

RFC (informational status)

RFC (experimental status)

RFC (best current practice status)

RFC (historic status)

RFC (unknown status)

IT dictionary

License.
All information of this service is derived from the free sources and is provided solely in the form of quotations. This service provides information and interfaces solely for the familiarization (not ownership) and under the "as is" condition.
Copyright 2016 © ELTASK.COM. All rights reserved.
Site is optimized for mobile devices.
Downloads: 1683 / 96487482. Delta: 0.09865 с