Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions) Summary: [Constants](https://developer.android.com/reference/android/provider/PeopleContract.Capability#constants) \| [Inherited Methods](https://developer.android.com/reference/android/provider/PeopleContract.Capability#inhmethods)

# PeopleContract.Capability

*** ** * ** ***


`
public
static
final

class
PeopleContract.Capability
`


`

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


`

`


`

|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.provider.PeopleContract.Capability |

<br />

*** ** * ** ***

Bitmask flags indicating the types of communication reached or supported by a user identity
in a People Directory.

**For People Directory applications:** People Directory applications should evaluate
user capabilities and combine appropriate reachability flags via bitwise OR when populating
the `https://developer.android.com/reference/android/provider/PeopleContract.Persons#CAPABILITY` column.

**For client applications:** Clients inspect these bitmask flags on returned person
records to determine which interaction types (such as audio calling, video calling, or
messaging) are supported before presenting communication actions or calling `https://developer.android.com/reference/android/provider/PeopleContract#createPeopleInteractionRequest(android.content.ContentResolver,%20java.lang.String,%20android.os.Bundle)`:

- `https://developer.android.com/reference/android/provider/PeopleContract.Capability#TEXT_REACHABILITY` indicates support for `https://developer.android.com/reference/android/provider/PeopleContract.Intents#PEOPLE_INTERACTION_TYPE_MESSAGE`.
- `https://developer.android.com/reference/android/provider/PeopleContract.Capability#VOICE_REACHABILITY` indicates support for `https://developer.android.com/reference/android/provider/PeopleContract.Intents#PEOPLE_INTERACTION_TYPE_VOICE`.
- `https://developer.android.com/reference/android/provider/PeopleContract.Capability#VIDEO_REACHABILITY` indicates support for `https://developer.android.com/reference/android/provider/PeopleContract.Intents#PEOPLE_INTERACTION_TYPE_VIDEO`.

<br />

## Summary

| ### Constants ||
|---|---|
| `int` | `https://developer.android.com/reference/android/provider/PeopleContract.Capability#TEXT_REACHABILITY` Flag indicating that the person supports text communication (such as instant messaging). |
| `int` | `https://developer.android.com/reference/android/provider/PeopleContract.Capability#VIDEO_REACHABILITY` Flag indicating that the person supports video communication (such as video calling). |
| `int` | `https://developer.android.com/reference/android/provider/PeopleContract.Capability#VOICE_REACHABILITY` Flag indicating that the person supports voice communication (such as audio calling). |

### 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*.


## Constants

### TEXT_REACHABILITY

Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions)

```
public static final int TEXT_REACHABILITY
```

Flag indicating that the person supports text communication (such as instant messaging).

<br />

Constant Value:

4
(0x00000004)


### VIDEO_REACHABILITY

Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions)

```
public static final int VIDEO_REACHABILITY
```

Flag indicating that the person supports video communication (such as video calling).

<br />

Constant Value:

2
(0x00000002)


### VOICE_REACHABILITY

Added in [version 37.2](https://developer.android.com/topic/libraries/support-library/revisions)

```
public static final int VOICE_REACHABILITY
```

Flag indicating that the person supports voice communication (such as audio calling).

<br />

Constant Value:

1
(0x00000001)