StorageStats
public
final
class
StorageStats
extends Object
implements
Parcelable
java.lang.Object | |
↳ | android.app.usage.StorageStats |
Storage statistics for a UID, package, or UserHandle
on a single
storage volume.
See also:
Summary
Constants | |
---|---|
int |
APP_DATA_TYPE_FILE_TYPE_APK
Represents all .apk files in application code path. |
int |
APP_DATA_TYPE_FILE_TYPE_CURRENT_PROFILE
Represents current profile of application. |
int |
APP_DATA_TYPE_FILE_TYPE_DEXOPT_ARTIFACT
Represents all nonstale dexopt and runtime artifacts of application. |
int |
APP_DATA_TYPE_FILE_TYPE_DM
Represents all .dm files in application code path. |
int |
APP_DATA_TYPE_FILE_TYPE_REFERENCE_PROFILE
Represents reference profile of application. |
int |
APP_DATA_TYPE_LIB
Represents lib/ in application code path. |
Inherited constants |
---|
Fields | |
---|---|
public
static
final
Creator<StorageStats> |
CREATOR
|
Public methods | |
---|---|
int
|
describeContents()
Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. |
long
|
getAppBytes()
Return the size of app. |
long
|
getAppBytesByDataType(int dataType)
Return the size of the specified data type. |
long
|
getCacheBytes()
Return the size of all cached data. |
long
|
getDataBytes()
Return the size of all data. |
long
|
getExternalCacheBytes()
Return the size of all cached data in the primary external/shared storage. |
void
|
writeToParcel(Parcel dest, int flags)
Flatten this object in to a Parcel. |
Inherited methods | |
---|---|
Constants
APP_DATA_TYPE_FILE_TYPE_APK
public static final int APP_DATA_TYPE_FILE_TYPE_APK
Represents all .apk files in application code path.
Can be used as an input to getAppBytesByDataType(int)
to get the sum of sizes for files of this type.
Constant Value: 3 (0x00000003)
APP_DATA_TYPE_FILE_TYPE_CURRENT_PROFILE
public static final int APP_DATA_TYPE_FILE_TYPE_CURRENT_PROFILE
Represents current profile of application.
Current profiles may or may not be used during the next profile-guided dexopt.
Can be used as an input to getAppBytesByDataType(int)
to get the size of files of this type. This size fluctuates regularly,
it goes up when the user uses more and more classes/methods and comes down when
a deamon merges this into the ref profile and does profile-guided dexopt.
Constant Value: 2 (0x00000002)
APP_DATA_TYPE_FILE_TYPE_DEXOPT_ARTIFACT
public static final int APP_DATA_TYPE_FILE_TYPE_DEXOPT_ARTIFACT
Represents all nonstale dexopt and runtime artifacts of application.
This includes AOT-compiled code and other data that can speed up app execution.
For more detailed information, read the
JIT compiler
guide.
Dexopt artifacts become stale when one of their dependencies
has changed. They may be cleaned up or replaced by ART Services at any time.
For a preload app, this type includes dexopt artifacts on readonly partitions
if they are up-to-date.
Can be used as an input to getAppBytesByDataType(int)
to get the sum of sizes for files of this type. The sum might include the size of data
that is part of appBytes, dataBytes or cacheBytes.
Constant Value: 0 (0x00000000)
APP_DATA_TYPE_FILE_TYPE_DM
public static final int APP_DATA_TYPE_FILE_TYPE_DM
Represents all .dm files in application code path.
Can be used as an input to getAppBytesByDataType(int)
to get the sum of sizes for files of this type.
Constant Value: 4 (0x00000004)
APP_DATA_TYPE_FILE_TYPE_REFERENCE_PROFILE
public static final int APP_DATA_TYPE_FILE_TYPE_REFERENCE_PROFILE
Represents reference profile of application.
Reference profiles are the ones used during the last profile-guided dexopt.
If the last dexopt wasn't profile-guided, then these profiles were not used.
Can be used as an input to getAppBytesByDataType(int)
to get the size of files of this type.
Constant Value: 1 (0x00000001)
APP_DATA_TYPE_LIB
public static final int APP_DATA_TYPE_LIB
Represents lib/ in application code path.
Can be used as an input to getAppBytesByDataType(int)
to get the size of lib/ directory.
Constant Value: 5 (0x00000005)
Fields
Public methods
describeContents
public int describeContents ()
Describe the kinds of special objects contained in this Parcelable
instance's marshaled representation. For example, if the object will
include a file descriptor in the output of writeToParcel(android.os.Parcel, int)
,
the return value of this method must include the
CONTENTS_FILE_DESCRIPTOR
bit.
Returns | |
---|---|
int |
a bitmask indicating the set of special object types marshaled
by this Parcelable object instance.
Value is either 0 or CONTENTS_FILE_DESCRIPTOR |
getAppBytes
public long getAppBytes ()
Return the size of app. This includes APK
files, optimized
compiler output, and unpacked native libraries.
If the primary external/shared storage is hosted on this storage device,
then this includes files stored under Context#getObbDir()
.
Code is shared between all users on a multiuser device.
Value is a non-negative number of bytes.
Returns | |
---|---|
long |
Value is a non-negative number of bytes. |
getAppBytesByDataType
public long getAppBytesByDataType (int dataType)
Return the size of the specified data type. This includes files stored under application code path.
If there is more than one package inside a uid, the return represents the aggregated stats when query StorageStat for package or uid. The data is not collected and the return defaults to 0 when query StorageStats for user.
Data is isolated for each user on a multiuser device.
Returns | |
---|---|
long |
getCacheBytes
public long getCacheBytes ()
Return the size of all cached data. This includes files stored under
Context#getCacheDir()
and Context#getCodeCacheDir()
.
If the primary external/shared storage is hosted on this storage device,
then this includes files stored under
Context#getExternalCacheDir()
.
Cached data is isolated for each user on a multiuser device.
Value is a non-negative number of bytes.
Returns | |
---|---|
long |
Value is a non-negative number of bytes. |
getDataBytes
public long getDataBytes ()
Return the size of all data. This includes files stored under
Context#getDataDir()
, Context#getCacheDir()
,
Context#getCodeCacheDir()
.
If the primary external/shared storage is hosted on this storage device,
then this includes files stored under
Context#getExternalFilesDir(String)
,
Context#getExternalCacheDir()
, and
Context#getExternalMediaDirs()
.
Data is isolated for each user on a multiuser device.
Value is a non-negative number of bytes.
Returns | |
---|---|
long |
Value is a non-negative number of bytes. |
getExternalCacheBytes
public long getExternalCacheBytes ()
Return the size of all cached data in the primary external/shared storage.
This includes files stored under
Context#getExternalCacheDir()
.
Cached data is isolated for each user on a multiuser device.
Value is a non-negative number of bytes.
Returns | |
---|---|
long |
Value is a non-negative number of bytes. |
writeToParcel
public void writeToParcel (Parcel dest, int flags)
Flatten this object in to a Parcel.
Parameters | |
---|---|
dest |
Parcel : The Parcel in which the object should be written.
This value cannot be null . |
flags |
int : Additional flags about how the object should be written.
May be 0 or Parcelable.PARCELABLE_WRITE_RETURN_VALUE .
Value is either 0 or a combination of Parcelable.PARCELABLE_WRITE_RETURN_VALUE , and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES |