# WebMessagePortCompat.WebMessageCallbackCompat

Artifact: [androidx.webkit:webkit](https://developer.android.com/jetpack/androidx/releases/webkit) [View Source](https://cs.android.com/search?q=file:androidx/webkit/WebMessagePortCompat.java+class:androidx.webkit.WebMessagePortCompat.WebMessageCallbackCompat) Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/webkit#1.1.0)

*** ** * ** ***


```
public abstract class WebMessagePortCompat.WebMessageCallbackCompat
```

<br />

*** ** * ** ***

The listener for handling MessagePort events. The message callback methods are called on the main thread. If the embedder application wants to receive the messages on a different thread, it can do this by passing a Handler in `https://developer.android.com/reference/androidx/webkit/WebMessagePortCompat#setWebMessageCallback(android.os.Handler,androidx.webkit.WebMessagePortCompat.WebMessageCallbackCompat)`. In the latter case, the application should be extra careful for thread safety since WebMessagePort methods should be called on main thread.

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/webkit/WebMessagePortCompat.WebMessageCallbackCompat#WebMessageCallbackCompat()()` |

| ### Public methods |
|---|---|
| `void` | `https://developer.android.com/reference/androidx/webkit/WebMessagePortCompat.WebMessageCallbackCompat#onMessage(androidx.webkit.WebMessagePortCompat,androidx.webkit.WebMessageCompat)( @https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/webkit/WebMessagePortCompat port, @https://jspecify.dev/docs/api/org/jspecify/annotations/Nullable.html https://developer.android.com/reference/androidx/webkit/WebMessageCompat message )` Message callback for receiving onMessage events. |

## Public constructors

### WebMessageCallbackCompat

Added in 1.1.0

```
public WebMessageCallbackCompat()
```

## Public methods

### onMessage

Added in [1.1.0](https://developer.android.com/jetpack/androidx/releases/webkit#1.1.0)

```
public void onMessage(
    @NonNull WebMessagePortCompat port,
    @Nullable WebMessageCompat message
)
```

Message callback for receiving onMessage events.

This method is called only if `https://developer.android.com/reference/androidx/webkit/WebViewFeature#WEB_MESSAGE_CALLBACK_ON_MESSAGE()` is supported. You can check whether that flag is supported using `https://developer.android.com/reference/androidx/webkit/WebViewFeature#isFeatureSupported(java.lang.String)`.

| Parameters |
|---|---|
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/NonNull.html https://developer.android.com/reference/androidx/webkit/WebMessagePortCompat port` | the WebMessagePort that the message is destined for |
| `@https://jspecify.dev/docs/api/org/jspecify/annotations/Nullable.html https://developer.android.com/reference/androidx/webkit/WebMessageCompat message` | the message from the entangled port. |