【Android】判断某个AP是否在系统中存在(PackageManager与PackageInfo)
【0】我们可以使用getPackageManager() 方法来查询安装在系统上的AP.
public abstract class
PackageManager
extends Objectjava.lang.Object | |
↳ | android.content.pm.PackageManager |
Known Direct Subclasses MockPackageManager |
getPackageManager()
. 【1】使用从Manifest.xml文件中获得到的PackageInfo来取得AP的信息. public class PackageInfo
extends Objectimplements Parcelable
java.lang.Object | |
↳ | android.content.pm.PackageInfo |
Overall information about the contents of a package. This corresponds to all of the information collected from AndroidManifest.xml.
public static finalCreator<PackageInfo>CREATOR
Since: API Level 1
publicActivityInfo[]activities
Since: API Level 1 Array of all<activity>
tags included under <application>, or null if there were none. This is only filled in if the flagGET_ACTIVITIES
was set.
publicApplicationInfoapplicationInfo
Since: API Level 1Information collected from the <application> tag, or null if there was none.
publicConfigurationInfo[]configPreferences
Since: API Level 3 Application specified preferred configuration<uses-configuration>
tags included under <manifest>, or null if there were none. This is only filled in if the flagGET_CONFIGURATIONS
was set.
public longfirstInstallTime
Since: API Level 9 The time at which the app was first installed. Units are as percurrentTimeMillis()
.
public int[]gids
Since: API Level 1 All kernel group-IDs that have been assigned to this package. This is only filled in if the flagGET_GIDS
was set.
publicInstrumentationInfo[]instrumentation
Since: API Level 1 Array of all<instrumentation>
tags included under <manifest>, or null if there were none. This is only filled in if the flagGET_INSTRUMENTATION
was set.
public longlastUpdateTime
Since: API Level 9 The time at which the app was last updated. Units are as percurrentTimeMillis()
.
publicStringpackageName
Since: API Level 1The name of this package. From the <manifest> tag's "name" attribute.
publicPermissionInfo[]permissions
Since: API Level 1 Array of all<permission>
tags included under <manifest>, or null if there were none. This is only filled in if the flagGET_PERMISSIONS
was set.
publicProviderInfo[]providers
Since: API Level 1 Array of all<provider>
tags included under <application>, or null if there were none. This is only filled in if the flagGET_PROVIDERS
was set.
publicActivityInfo[]receivers
Since: API Level 1 Array of all<receiver>
tags included under <application>, or null if there were none. This is only filled in if the flagGET_RECEIVERS
was set.
publicFeatureInfo[]reqFeatures
Since: API Level 5The features that this application has said it requires.
publicString[]requestedPermissions
Since: API Level 1 Array of all<uses-permission>
tags included under <manifest>, or null if there were none. This is only filled in if the flagGET_PERMISSIONS
was set. This list includes all permissions requested, even those that were not granted or known by the system at install time.
publicServiceInfo[]services
Since: API Level 1 Array of all<service>
tags included under <application>, or null if there were none. This is only filled in if the flagGET_SERVICES
was set.
publicStringsharedUserId
Since: API Level 3 The shared user ID name of this package, as specified by the <manifest> tag'ssharedUserId
attribute.
public intsharedUserLabel
Since: API Level 3 The shared user ID label of this package, as specified by the <manifest> tag'ssharedUserLabel
attribute.
publicSignature[]signatures
Since: API Level 1 Array of all signatures read from the package file. This is only filled in if the flagGET_SIGNATURES
was set.
public intversionCode
Since: API Level 1 The version number of this package, as specified by the <manifest> tag'sversionCode
attribute.
publicStringversionName
Since: API Level 1 The version name of this package, as specified by the <manifest> tag'sversionName
attribute.
public abstractList<PackageInfo>getInstalledPackages(int flags)
Since: API Level 1Return a List of all packages that are installed on the device.
Parameters
Additional option flags. Use any combination ofGET_ACTIVITIES ,GET_GIDS ,GET_CONFIGURATIONS ,GET_INSTRUMENTATION ,GET_PERMISSIONS ,GET_PROVIDERS ,GET_RECEIVERS ,GET_SERVICES ,GET_SIGNATURES ,GET_UNINSTALLED_PACKAGES to modify the data returned. |
Returns
- A List of PackageInfo objects, one for each package that is installed on the device. In the unlikely case of there being no installed packages, 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.
谢谢!
更多相关文章
- Android(安卓)GPS获得经纬度并得到该坐标精确地址
- android如何往SDCard中存取图片
- android 使用post方式上传文件
- android 中 LocalSocket的基本使用方法
- Android经常使用开源组件汇总
- 箭头函数的基础使用
- NPM 和webpack 的基础使用
- Python list sort方法的具体使用
- 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程