Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Inherited Constants](https://developer.android.com/reference/android/os/Debug.MemoryInfo#inhconstants) \| [Fields](https://developer.android.com/reference/android/os/Debug.MemoryInfo#lfields) \| [Ctors](https://developer.android.com/reference/android/os/Debug.MemoryInfo#pubctors) \| [Methods](https://developer.android.com/reference/android/os/Debug.MemoryInfo#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/os/Debug.MemoryInfo#inhmethods)

# Debug.MemoryInfo

*** ** * ** ***


`
public
static


class
Debug.MemoryInfo
`


`

extends https://developer.android.com/reference/java/lang/Object


`

`


implements

https://developer.android.com/reference/android/os/Parcelable


`

|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.os.Debug.MemoryInfo |

<br />

*** ** * ** ***

This class is used to retrieved various statistics about the memory mappings for this
process. The returned info is broken down by dalvik, native, and other. All results are in kB.

## Summary

| ### Inherited constants |
|---|
| From interface `https://developer.android.com/reference/android/os/Parcelable` |---|---| | `int` | `https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` Descriptor bit used with `https://developer.android.com/reference/android/os/Parcelable#describeContents()`: indicates that the Parcelable object's flattened representation includes a file descriptor. | | `int` | `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE` Flag for use with `https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)`: the object being written is a return value, that is the result of a function such as "`Parcelable someFunction()`", "`void someFunction(out Parcelable)`", or "`void someFunction(inout Parcelable)`". | |

| ### Fields ||
|---|---|
| ` public static final https://developer.android.com/reference/android/os/Parcelable.Creator<https://developer.android.com/reference/android/os/Debug.MemoryInfo>` | `https://developer.android.com/reference/android/os/Debug.MemoryInfo#CREATOR` |
| ` public int` | `https://developer.android.com/reference/android/os/Debug.MemoryInfo#dalvikPrivateDirty` The private dirty pages used by dalvik heap. |
| ` public int` | `https://developer.android.com/reference/android/os/Debug.MemoryInfo#dalvikPss` The proportional set size for dalvik heap. |
| ` public int` | `https://developer.android.com/reference/android/os/Debug.MemoryInfo#dalvikSharedDirty` The shared dirty pages used by dalvik heap. |
| ` public int` | `https://developer.android.com/reference/android/os/Debug.MemoryInfo#nativePrivateDirty` The private dirty pages used by the native heap. |
| ` public int` | `https://developer.android.com/reference/android/os/Debug.MemoryInfo#nativePss` The proportional set size for the native heap. |
| ` public int` | `https://developer.android.com/reference/android/os/Debug.MemoryInfo#nativeSharedDirty` The shared dirty pages used by the native heap. |
| ` public int` | `https://developer.android.com/reference/android/os/Debug.MemoryInfo#otherPrivateDirty` The private dirty pages used by everything else. |
| ` public int` | `https://developer.android.com/reference/android/os/Debug.MemoryInfo#otherPss` The proportional set size for everything else. |
| ` public int` | `https://developer.android.com/reference/android/os/Debug.MemoryInfo#otherSharedDirty` The shared dirty pages used by everything else. |

| ### Public constructors ||
|---|---|
| ` https://developer.android.com/reference/android/os/Debug.MemoryInfo#MemoryInfo()() ` |

| ### Public methods ||
|---|---|
| ` int` | ` https://developer.android.com/reference/android/os/Debug.MemoryInfo#describeContents()() ` Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. |
| ` https://developer.android.com/reference/java/lang/String` | ` https://developer.android.com/reference/android/os/Debug.MemoryInfo#getMemoryStat(java.lang.String)(https://developer.android.com/reference/java/lang/String statName) ` Returns the value of a particular memory statistic or `null` if no such memory statistic exists. |
| ` https://developer.android.com/reference/java/util/Map<https://developer.android.com/reference/java/lang/String, https://developer.android.com/reference/java/lang/String>` | ` https://developer.android.com/reference/android/os/Debug.MemoryInfo#getMemoryStats()() ` Returns a map of the names/values of the memory statistics that `https://developer.android.com/reference/android/os/Debug.MemoryInfo#getMemoryStat(java.lang.String)` supports. |
| ` int` | ` https://developer.android.com/reference/android/os/Debug.MemoryInfo#getTotalPrivateClean()() ` Return total shared clean memory usage in kB. |
| ` int` | ` https://developer.android.com/reference/android/os/Debug.MemoryInfo#getTotalPrivateDirty()() ` Return total private dirty memory usage in kB. |
| ` int` | ` https://developer.android.com/reference/android/os/Debug.MemoryInfo#getTotalPss()() ` Return total PSS memory usage in kB. |
| ` int` | ` https://developer.android.com/reference/android/os/Debug.MemoryInfo#getTotalSharedClean()() ` Return total shared clean memory usage in kB. |
| ` int` | ` https://developer.android.com/reference/android/os/Debug.MemoryInfo#getTotalSharedDirty()() ` Return total shared dirty memory usage in kB. |
| ` int` | ` https://developer.android.com/reference/android/os/Debug.MemoryInfo#getTotalSwappablePss()() ` Return total PSS memory usage in kB mapping a file of one of the following extension: .so, .jar, .apk, .ttf, .dex, .odex, .oat, .art . |
| ` void` | ` https://developer.android.com/reference/android/os/Debug.MemoryInfo#readFromParcel(android.os.Parcel)(https://developer.android.com/reference/android/os/Parcel source) ` |
| ` void` | ` https://developer.android.com/reference/android/os/Debug.MemoryInfo#writeToParcel(android.os.Parcel,%20int)(https://developer.android.com/reference/android/os/Parcel dest, int flags) ` Flatten this object in to a Parcel. |

| ### Inherited methods |
|---|---|
| From class ` https://developer.android.com/reference/java/lang/Object ` |---|---| | ` https://developer.android.com/reference/java/lang/Object` | ` https://developer.android.com/reference/java/lang/Object#clone()() ` Creates and returns a copy of this object. | | ` boolean` | ` https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object obj) ` Indicates whether some other object is "equal to" this one. | | ` void` | ` https://developer.android.com/reference/java/lang/Object#finalize()() ` Called by the garbage collector on an object when garbage collection determines that there are no more references to the object. | | ` final https://developer.android.com/reference/java/lang/Class<?>` | ` https://developer.android.com/reference/java/lang/Object#getClass()() ` Returns the runtime class of this `Object`. | | ` int` | ` https://developer.android.com/reference/java/lang/Object#hashCode()() ` Returns a hash code value for the object. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#notify()() ` Wakes up a single thread that is waiting on this object's monitor. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#notifyAll()() ` Wakes up all threads that are waiting on this object's monitor. | | ` https://developer.android.com/reference/java/lang/String` | ` https://developer.android.com/reference/java/lang/Object#toString()() ` Returns a string representation of the object. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#wait(long,%20int)(long timeoutMillis, int nanos) ` Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#wait(long)(long timeoutMillis) ` Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*, or until a certain amount of real time has elapsed. | | ` final void` | ` https://developer.android.com/reference/java/lang/Object#wait()() ` Causes the current thread to wait until it is awakened, typically by being *notified* or *interrupted*. | ||
| From interface ` https://developer.android.com/reference/android/os/Parcelable ` |---|---| | ` abstract int` | ` https://developer.android.com/reference/android/os/Parcelable#describeContents()() ` Describe the kinds of special objects contained in this Parcelable instance's marshaled representation. | | ` abstract void` | ` https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)(https://developer.android.com/reference/android/os/Parcel dest, int flags) ` Flatten this object in to a Parcel. | ||

## Fields

### CREATOR

Added in [API level 5](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final Creator<Debug.MemoryInfo> CREATOR
```

<br />

<br />

### dalvikPrivateDirty

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int dalvikPrivateDirty
```

The private dirty pages used by dalvik heap.

<br />

### dalvikPss

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int dalvikPss
```

The proportional set size for dalvik heap. (Doesn't include other Dalvik overhead.)

<br />

### dalvikSharedDirty

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int dalvikSharedDirty
```

The shared dirty pages used by dalvik heap.

<br />

### nativePrivateDirty

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int nativePrivateDirty
```

The private dirty pages used by the native heap.

<br />

### nativePss

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int nativePss
```

The proportional set size for the native heap.

<br />

### nativeSharedDirty

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int nativeSharedDirty
```

The shared dirty pages used by the native heap.

<br />

### otherPrivateDirty

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int otherPrivateDirty
```

The private dirty pages used by everything else.

<br />

### otherPss

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int otherPss
```

The proportional set size for everything else.

<br />

### otherSharedDirty

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int otherSharedDirty
```

The shared dirty pages used by everything else.

<br />

## Public constructors

### MemoryInfo

Added in [API level 1](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public MemoryInfo ()
```

<br />

<br />

## Public methods

### describeContents

Added in [API level 5](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
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 `https://developer.android.com/reference/android/os/Parcelable#writeToParcel(android.os.Parcel,%20int)`,
the return value of this method must include the
`https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` bit.

<br />

| Returns ||
|---|---|
| `int` | a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either `0` or - `https://developer.android.com/reference/android/os/Parcelable#CONTENTS_FILE_DESCRIPTOR` |

### getMemoryStat

Added in [API level 23](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public String getMemoryStat (String statName)
```

Returns the value of a particular memory statistic or `null` if no
such memory statistic exists.

The following table lists the memory statistics that are supported.
Note that memory statistics may be added or removed in a future API level.

| Memory statistic name | Meaning | Example | Supported (API Levels) |
|---|---|---|---|
| summary.java-heap | The private Java Heap usage in kB. This corresponds to the Java Heap field in the App Summary section output by dumpsys meminfo. | `1442` | 23 |
| summary.native-heap | The private Native Heap usage in kB. This corresponds to the Native Heap field in the App Summary section output by dumpsys meminfo. | `1442` | 23 |
| summary.code | The memory usage for static code and resources in kB. This corresponds to the Code field in the App Summary section output by dumpsys meminfo. | `1442` | 23 |
| summary.stack | The stack usage in kB. This corresponds to the Stack field in the App Summary section output by dumpsys meminfo. | `1442` | 23 |
| summary.graphics | The graphics usage in kB. This corresponds to the Graphics field in the App Summary section output by dumpsys meminfo. | `1442` | 23 |
| summary.private-other | Other private memory usage in kB. This corresponds to the Private Other field output in the App Summary section by dumpsys meminfo. | `1442` | 23 |
| summary.system | Shared and system memory usage in kB. This corresponds to the System field output in the App Summary section by dumpsys meminfo. | `1442` | 23 |
| summary.total-pss | Total PSS memory usage in kB. | `1442` | 23 |
| summary.total-swap | Total swap usage in kB. | `1442` | 23 |

<br />

<br />

| Parameters ||
|---|---|
| `statName` | `String` <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/lang/String` | <br /> |

### getMemoryStats

Added in [API level 23](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public Map<String, String> getMemoryStats ()
```

Returns a map of the names/values of the memory statistics
that `https://developer.android.com/reference/android/os/Debug.MemoryInfo#getMemoryStat(java.lang.String)` supports.

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/java/util/Map<https://developer.android.com/reference/java/lang/String, https://developer.android.com/reference/java/lang/String>` | a map of the names/values of the supported memory statistics. <br /> |

### getTotalPrivateClean

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getTotalPrivateClean ()
```

Return total shared clean memory usage in kB.

<br />

| Returns ||
|---|---|
| `int` | <br /> |

### getTotalPrivateDirty

Added in [API level 5](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getTotalPrivateDirty ()
```

Return total private dirty memory usage in kB.

<br />

| Returns ||
|---|---|
| `int` | <br /> |

### getTotalPss

Added in [API level 5](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getTotalPss ()
```

Return total PSS memory usage in kB.

<br />

| Returns ||
|---|---|
| `int` | <br /> |

### getTotalSharedClean

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getTotalSharedClean ()
```

Return total shared clean memory usage in kB.

<br />

| Returns ||
|---|---|
| `int` | <br /> |

### getTotalSharedDirty

Added in [API level 5](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getTotalSharedDirty ()
```

Return total shared dirty memory usage in kB.

<br />

| Returns ||
|---|---|
| `int` | <br /> |

### getTotalSwappablePss

Added in [API level 19](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public int getTotalSwappablePss ()
```

Return total PSS memory usage in kB mapping a file of one of the following extension:
.so, .jar, .apk, .ttf, .dex, .odex, .oat, .art .

<br />

| Returns ||
|---|---|
| `int` | <br /> |

### readFromParcel

Added in [API level 5](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void readFromParcel (Parcel source)
```

<br />

<br />

| Parameters ||
|---|---|
| `source` | `Parcel` <br /> |

### writeToParcel

Added in [API level 5](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public void writeToParcel (Parcel dest, 
                int flags)
```

Flatten this object in to a Parcel.

<br />

| Parameters ||
|---|---|
| `dest` | `Parcel`: The Parcel in which the object should be written. This value cannot be `null`. <br /> |
| `flags` | `int`: Additional flags about how the object should be written. May be 0 or `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE`. Value is either `0` or a combination of the following: - `https://developer.android.com/reference/android/os/Parcelable#PARCELABLE_WRITE_RETURN_VALUE` |