# RemoteInteraction

Summary:[Constants](https://developer.android.com/reference/android/support/test/espresso/remote/RemoteInteraction#constants)\|[Methods](https://developer.android.com/reference/android/support/test/espresso/remote/RemoteInteraction#pubmethods)\|[\[Expand All\]](https://developer.android.com/reference/android/support/test/espresso/remote/RemoteInteraction#)  

# RemoteInteraction

| This package is part of the Android[support library](https://developer.android.com/topic/libraries/support-library)which is no longer maintained. The support library has been superseded by[AndroidX](https://developer.android.com/jetpack/androidx)which is part of[Jetpack](https://developer.android.com/jetpack). We recommend using the AndroidX libraries in all new projects. You should also consider[migrating](https://developer.android.com/jetpack/androidx/migrate)existing projects to AndroidX. To find the AndroidX class that maps to this deprecated class, see the AndroidX support library[class mappings](https://developer.android.com/jetpack/androidx/migrate/class-mappings).

`
public


interface
RemoteInteraction
`  
`


`

|--------------------------------------------------------|
| android.support.test.espresso.remote.RemoteInteraction |

|---|---|
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/test/espresso/remote/RemoteInteraction#)Known Indirect Subclasses [EspressoRemote](https://developer.android.com/reference/android/support/test/espresso/remote/EspressoRemote),[NoopRemoteInteraction](https://developer.android.com/reference/android/support/test/espresso/remote/NoopRemoteInteraction) |-----------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------| | [EspressoRemote](https://developer.android.com/reference/android/support/test/espresso/remote/EspressoRemote)               | A singleton class that facilitates communication between other Espresso instance that may be running in different processes. | | [NoopRemoteInteraction](https://developer.android.com/reference/android/support/test/espresso/remote/NoopRemoteInteraction) | Noop RemoteInteraction object                                                                                                | ||

<br />

*** ** * ** ***

Facilitates communication between other Espresso instance that may be running in different processes.

## Summary

|                                                                                                           ### Constants                                                                                                           ||
|-------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------|
| [String](https://developer.android.com/reference/java/lang/String.html) | [BUNDLE_EXECUTION_STATUS](https://developer.android.com/reference/android/support/test/espresso/remote/RemoteInteraction#BUNDLE_EXECUTION_STATUS) <br /> |

|                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               ### Public methods                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               ||
|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` abstract `[Callable](https://developer.android.com/reference/java/util/concurrent/Callable.html)`<`[Void](https://developer.android.com/reference/java/lang/Void.html)`>` | ` `[createRemoteCheckCallable](https://developer.android.com/reference/android/support/test/espresso/remote/RemoteInteraction#createRemoteCheckCallable(org.hamcrest.Matcher<android.support.test.espresso.Root>, org.hamcrest.Matcher<android.view.View>, java.util.Map<java.lang.String, android.os.IBinder>, android.support.test.espresso.ViewAssertion))`(Matcher<`[Root](https://developer.android.com/reference/android/support/test/espresso/Root)`> rootMatcher, Matcher<`[View](https://developer.android.com/reference/android/view/View.html)`> viewMatcher, `[Map](https://developer.android.com/reference/java/util/Map.html)`<`[String](https://developer.android.com/reference/java/lang/String.html)`, `[IBinder](https://developer.android.com/reference/android/os/IBinder.html)`> iBinders, `[ViewAssertion](https://developer.android.com/reference/android/support/test/espresso/ViewAssertion)` viewAssert) ` Creates a callable to run Espresso check interaction on remote processes The caller is expected to schedule the task to run. |
| ` abstract `[Callable](https://developer.android.com/reference/java/util/concurrent/Callable.html)`<`[Void](https://developer.android.com/reference/java/lang/Void.html)`>` | ` `[createRemotePerformCallable](https://developer.android.com/reference/android/support/test/espresso/remote/RemoteInteraction#createRemotePerformCallable(org.hamcrest.Matcher<android.support.test.espresso.Root>, org.hamcrest.Matcher<android.view.View>, java.util.Map<java.lang.String, android.os.IBinder>, android.support.test.espresso.ViewAction...))`(Matcher<`[Root](https://developer.android.com/reference/android/support/test/espresso/Root)`> rootMatcher, Matcher<`[View](https://developer.android.com/reference/android/view/View.html)`> viewMatcher, `[Map](https://developer.android.com/reference/java/util/Map.html)`<`[String](https://developer.android.com/reference/java/lang/String.html)`, `[IBinder](https://developer.android.com/reference/android/os/IBinder.html)`> iBinders, `[ViewAction...](https://developer.android.com/reference/android/support/test/espresso/ViewAction)` viewActions) ` Creates a callable to run a perform interaction on remote processes.                                                       |
| ` abstract boolean`                                                                                                                                                         | ` `[isRemoteProcess](https://developer.android.com/reference/android/support/test/espresso/remote/RemoteInteraction#isRemoteProcess())`() `                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |

## Constants

### BUNDLE_EXECUTION_STATUS

```
String BUNDLE_EXECUTION_STATUS
```

<br />

<br />

Constant Value: "executionStatus"

## Public methods

### createRemoteCheckCallable

```
Callable<Void> createRemoteCheckCallable (Matcher<Root> rootMatcher, 
                Matcher<View> viewMatcher, 
                Map<String, IBinder> iBinders, 
                ViewAssertion viewAssert)
```

Creates a callable to run Espresso check interaction on remote processes

The caller is expected to schedule the task to run.

<br />

|                                         Parameters                                          ||
|---------------|------------------------------------------------------------------------------|
| `rootMatcher` | `Matcher`: the root matcher to use. <br />                                   |
| `viewMatcher` | `Matcher`: the view matcher to use. <br />                                   |
| `iBinders`    | `Map`: a list of binders to pass along to the remote process instance <br /> |
| `viewAssert`  | `ViewAssertion`: the assertion to check. <br />                              |

|                                                                                                                                                          Returns                                                                                                                                                           ||
|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Callable](https://developer.android.com/reference/java/util/concurrent/Callable.html)`<`[Void](https://developer.android.com/reference/java/lang/Void.html)`>` | a[Callable](https://developer.android.com/reference/java/util/concurrent/Callable.html)that will perform the check pending completion of the task. <br /> |

### createRemotePerformCallable

```
Callable<Void> createRemotePerformCallable (Matcher<Root> rootMatcher, 
                Matcher<View> viewMatcher, 
                Map<String, IBinder> iBinders, 
                ViewAction... viewActions)
```

Creates a callable to run a perform interaction on remote processes.

If there no remote Espresso currently running in a timely manner the interaction will not be executed and a[NoRemoteEspressoInstanceException](https://developer.android.com/reference/android/support/test/espresso/remote/NoRemoteEspressoInstanceException)will be thrown.

<br />

|                                         Parameters                                          ||
|---------------|------------------------------------------------------------------------------|
| `rootMatcher` | `Matcher`: the root matcher to use. <br />                                   |
| `viewMatcher` | `Matcher`: the view matcher to use. <br />                                   |
| `iBinders`    | `Map`: a list of binders to pass along to the remote process instance <br /> |
| `viewActions` | `ViewAction`: one or more actions to execute. <br />                         |

|                                                                                                                                         Returns                                                                                                                                          ||
|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------|
| [Callable](https://developer.android.com/reference/java/util/concurrent/Callable.html)`<`[Void](https://developer.android.com/reference/java/lang/Void.html)`>` | a[Callable](https://developer.android.com/reference/java/util/concurrent/Callable.html)that performs the action. <br /> |

### isRemoteProcess

```
boolean isRemoteProcess ()
```

<br />

<br />

|                                        Returns                                        ||
|-----------|----------------------------------------------------------------------------|
| `boolean` | `true`if the current Espresso instance running in a remote process. <br /> |

-

  ## Interfaces

  - [Bindable](https://developer.android.com/reference/android/support/test/espresso/remote/Bindable)
  - [Converter](https://developer.android.com/reference/android/support/test/espresso/remote/Converter)
  - [EspressoRemoteMessage](https://developer.android.com/reference/android/support/test/espresso/remote/EspressoRemoteMessage)
  - [EspressoRemoteMessage.From](https://developer.android.com/reference/android/support/test/espresso/remote/EspressoRemoteMessage.From)
  - [EspressoRemoteMessage.To](https://developer.android.com/reference/android/support/test/espresso/remote/EspressoRemoteMessage.To)
  - [RemoteInteraction](https://developer.android.com/reference/android/support/test/espresso/remote/RemoteInteraction)
-

  ## Classes

  - [ConstructorInvocation](https://developer.android.com/reference/android/support/test/espresso/remote/ConstructorInvocation)
  - [EspressoRemote](https://developer.android.com/reference/android/support/test/espresso/remote/EspressoRemote)
  - [FieldDescriptor](https://developer.android.com/reference/android/support/test/espresso/remote/FieldDescriptor)
  - [GenericRemoteMessage](https://developer.android.com/reference/android/support/test/espresso/remote/GenericRemoteMessage)
  - [InteractionRequest](https://developer.android.com/reference/android/support/test/espresso/remote/InteractionRequest)
  - [InteractionRequest.Builder](https://developer.android.com/reference/android/support/test/espresso/remote/InteractionRequest.Builder)
  - [InteractionResponse](https://developer.android.com/reference/android/support/test/espresso/remote/InteractionResponse)
  - [InteractionResponse.Builder](https://developer.android.com/reference/android/support/test/espresso/remote/InteractionResponse.Builder)
  - [InteractionResponse.RemoteError](https://developer.android.com/reference/android/support/test/espresso/remote/InteractionResponse.RemoteError)
  - [NoopRemoteInteraction](https://developer.android.com/reference/android/support/test/espresso/remote/NoopRemoteInteraction)
  - [ProtoUtils](https://developer.android.com/reference/android/support/test/espresso/remote/ProtoUtils)
  - [RemoteDescriptor](https://developer.android.com/reference/android/support/test/espresso/remote/RemoteDescriptor)
  - [RemoteDescriptor.Builder](https://developer.android.com/reference/android/support/test/espresso/remote/RemoteDescriptor.Builder)
  - [RemoteDescriptorRegistry](https://developer.android.com/reference/android/support/test/espresso/remote/RemoteDescriptorRegistry)
  - [RemoteInteractionRegistry](https://developer.android.com/reference/android/support/test/espresso/remote/RemoteInteractionRegistry)
  - [TypeProtoConverters](https://developer.android.com/reference/android/support/test/espresso/remote/TypeProtoConverters)
-

  ## Enums

  - [InteractionResponse.Status](https://developer.android.com/reference/android/support/test/espresso/remote/InteractionResponse.Status)
-

  ## Exceptions

  - [NoRemoteEspressoInstanceException](https://developer.android.com/reference/android/support/test/espresso/remote/NoRemoteEspressoInstanceException)
  - [RemoteEspressoException](https://developer.android.com/reference/android/support/test/espresso/remote/RemoteEspressoException)
  - [RemoteProtocolException](https://developer.android.com/reference/android/support/test/espresso/remote/RemoteProtocolException)