类ApplicationInfo详解
Posted andy连长
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了类ApplicationInfo详解相关的知识,希望对你有一定的参考价值。
包android.content.pm
java.lang.Object
android.content.pm.PackageItemInfo
android.content.pm.ApplicationInfo
所有已实现的接口:
Parcelable
public class ApplicationInfo
extends PackageItemInfo
implements Parcelable
Information you can retrieve about a particular application. This corresponds to information collected from the AndroidManifest.xml's <application> tag.
嵌套类摘要 | |
static class | ApplicationInfo.DisplayNameComparator |
从接口 android.os.Parcelable 继承的嵌套类/接口 |
Parcelable.Creator<T> |
字段摘要 | |
String | className |
static Parcelable.Creator<ApplicationInfo> | CREATOR |
String | dataDir |
int | descriptionRes |
boolean | enabled |
static int | FLAG_ALLOW_CLEAR_USER_DATA |
static int | FLAG_ALLOW_TASK_REPARENTING |
static int | FLAG_DEBUGGABLE |
static int | FLAG_FACTORY_TEST |
static int | FLAG_HAS_CODE |
static int | FLAG_PERSISTENT |
static int | FLAG_SYSTEM |
static int | FLAG_UPDATED_SYSTEM_APP |
int | flags |
String | manageSpaceActivityName |
String | permission |
String | processName |
String | publicSourceDir |
String[] | sharedLibraryFiles |
String | sourceDir |
String | taskAffinity |
int | theme |
int | uid |
从类 android.content.pm.PackageItemInfo 继承的字段 |
icon, labelRes, metaData, name, nonLocalizedLabel, packageName |
从接口 android.os.Parcelable 继承的字段 |
CONTENTS_FILE_DESCRIPTOR, PARCELABLE_WRITE_RETURN_VALUE |
构造方法摘要 | |
ApplicationInfo() |
|
ApplicationInfo(ApplicationInfo orig) |
|
方法摘要 | |
int | describeContents() |
void | dump(Printer pw, String prefix) |
CharSequence | loadDescription(PackageManager pm) |
String | toString() |
void | writeToParcel(Parcel dest, int parcelableFlags) |
从类 android.content.pm.PackageItemInfo 继承的方法 |
loadIcon, loadLabel, loadXmlMetaData |
从类 java.lang.Object 继承的方法 |
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
字段详细信息 |
taskAffinity
public String taskAffinity
Default task affinity of all activities in this application. See ActivityInfo.taskAffinity for more information. This comes from the "taskAffinity" attribute.
permission
public String permission
Optional name of a permission required to be able to access this application's components. From the "permission" attribute.
processName
public String processName
The name of the process this application should run in. From the "process" attribute or, if not set, the same as packageName.
className
public String className
Class implementing the Application object. From the "class" attribute.
descriptionRes
public int descriptionRes
A style resource identifier (in the package's resources) of the description of an application. From the "description" attribute or, if not set, 0.
theme
public int theme
A style resource identifier (in the package's resources) of the default visual theme of the application. From the "theme" attribute or, if not set, 0.
manageSpaceActivityName
public String manageSpaceActivityName
Class implementing the Application's manage space functionality. From the "manageSpaceActivity" attribute. This is an optional attribute and will be null if application's dont specify it in their manifest
FLAG_SYSTEM
public static final int FLAG_SYSTEM
Value for flags: if set, this application is installed in the device's system image.
另请参见:
常量字段值
FLAG_DEBUGGABLE
public static final int FLAG_DEBUGGABLE
Value for flags: set to true if this application would like to allow debugging of its code, even when installed on a non-development system. Comes from android:debuggableof the <application> tag.
另请参见:
常量字段值
FLAG_HAS_CODE
public static final int FLAG_HAS_CODE
Value for flags: set to true if this application has code associated with it. Comes from android:hasCode of the <application> tag.
另请参见:
常量字段值
FLAG_PERSISTENT
public static final int FLAG_PERSISTENT
Value for flags: set to true if this application is persistent. Comes from android:persistent of the <application> tag.
另请参见:
常量字段值
FLAG_FACTORY_TEST
public static final int FLAG_FACTORY_TEST
Value for flags: set to true iif this application holds the android.Manifest.permission#FACTORY_TEST permission and the device is running in factory test mode.
另请参见:
常量字段值
FLAG_ALLOW_TASK_REPARENTING
public static final int FLAG_ALLOW_TASK_REPARENTING
Value for flags: default value for the corresponding ActivityInfo flag. Comes from android:allowTaskReparenting of the <application> tag.
另请参见:
常量字段值
FLAG_ALLOW_CLEAR_USER_DATA
public static final int FLAG_ALLOW_CLEAR_USER_DATA
Value for flags: default value for the corresponding ActivityInfo flag. Comes from android:allowClearUserData of the <application> tag.
另请参见:
常量字段值
FLAG_UPDATED_SYSTEM_APP
public static final int FLAG_UPDATED_SYSTEM_APP
Value for flags: default value for the corresponding ActivityInfo flag.
另请参见:
常量字段值
flags
public int flags
Flags associated with the application. Any combination of FLAG_SYSTEM, FLAG_DEBUGGABLE, FLAG_HAS_CODE, FLAG_PERSISTENT, FLAG_FACTORY_TEST, and FLAG_ALLOW_TASK_REPARENTING FLAG_ALLOW_CLEAR_USER_DATA.
sourceDir
public String sourceDir
Full path to the location of this package.
publicSourceDir
public String publicSourceDir
Full path to the location of the publicly available parts of this package (i.e. the resources and manifest). For non-forward-locked apps this will be the same as @link #sourceDir).
sharedLibraryFiles
public String[] sharedLibraryFiles
Paths to all shared libraries this application is linked against. This field is only set if the PackageManager.GET_SHARED_LIBRARY_FILES flag was used when retrieving the structure.
dataDir
public String dataDir
Full path to a directory assigned to the package for its persistent data.
uid
public int uid
The kernel user-ID that has been assigned to this application; currently this is not a unique ID (multiple applications can have the same uid).
enabled
public boolean enabled
When false, indicates that all components within this application are considered disabled, regardless of their individually set enabled status.
CREATOR
public static final Parcelable.Creator<ApplicationInfo> CREATOR
构造方法详细信息 |
ApplicationInfo
public ApplicationInfo()
ApplicationInfo
public ApplicationInfo(ApplicationInfo orig)
方法详细信息 |
dump
public void dump(Printer pw,
String prefix)
toString
public String toString()
从类 Object 复制的描述
Returns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation simply concatenates the class name, the '@' sign and a hexadecimal representation of the object's Object.hashCode(), that is, it is equivalent to the following expression:
getClass().getName() + '@' + Integer.toHexString(hashCode())
覆盖:
类 Object 中的 toString
返回:
a printable representation of this object.
describeContents
public int describeContents()
从接口 Parcelable 复制的描述
Describe the kinds of special objects contained in this Parcelable's marshalled representation.
指定者:
接口 Parcelable 中的 describeContents
返回:
a bitmask indicating the set of special object types marshalled by the Parcelable.
writeToParcel
public void writeToParcel(Parcel dest,
int parcelableFlags)
从接口 Parcelable 复制的描述
Flatten this object in to a Parcel.
指定者:
接口 Parcelable 中的 writeToParcel
覆盖:
类 PackageItemInfo 中的 writeToParcel
参数:
dest - The Parcel in which the object should be written.
parcelableFlags - Additional flags about how the object should be written. May be 0 or Parcelable.PARCELABLE_WRITE_RETURN_VALUE.
loadDescription
public CharSequence loadDescription(PackageManager pm)
Retrieve the textual description of the application. Thiswill call back on the given PackageManager to load the description fromthe application.
参数:
pm - A PackageManager from which the label can be loaded; usuallythe PackageManager from which you originally retrieved this item.
返回:
Returns a CharSequence containing the application's description.If there is no description, null is returned.
以上是关于类ApplicationInfo详解的主要内容,如果未能解决你的问题,请参考以下文章
ApplicationInfo 和 PackageInfo 的区别?
PackageInfo 和 ApplicationInfo 的 Swift 等价物
为 arm64 Android 手机构建应用程序包时在 ApplicationInfo.nativeLibraryDir 中找不到本机库
在为arm64 Android手机构建应用程序包时,在ApplicationInfo.nativeLibraryDir中找不到本机库