JavaScriptReplyProxy
@UiThread
abstract class JavaScriptReplyProxy
This class represents the JavaScript object injected by WebViewCompat#addWebMessageListener. An instance will be given by WebMessageListener#onPostMessage. The app can use postMessage to talk to the JavaScript context.
There is a 1:1 relationship between this object and the JavaScript object in a frame.
| See also | |
|---|---|
addWebMessageListener |
Summary
Public functions |
|
|---|---|
abstract Unit |
@RequiresFeature(name = WebViewFeature.WEB_MESSAGE_ARRAY_BUFFER, enforcement = "androidx.webkit.WebViewFeature#isFeatureSupported")Post a ArrayBuffer message to the injected JavaScript object which sent this |
abstract Unit |
@RequiresFeature(name = WebViewFeature.WEB_MESSAGE_LISTENER, enforcement = "androidx.webkit.WebViewFeature#isFeatureSupported")Post a String message to the injected JavaScript object which sent this |
Public functions
postMessage
@RequiresFeature(name = WebViewFeature.WEB_MESSAGE_ARRAY_BUFFER, enforcement = "androidx.webkit.WebViewFeature#isFeatureSupported")
abstract fun postMessage(arrayBuffer: ByteArray): Unit
Post a ArrayBuffer message to the injected JavaScript object which sent this JavaScriptReplyProxy. Be aware that large byte buffers can lead to out-of-memory crashes on low-end devices.
| Parameters | |
|---|---|
arrayBuffer: ByteArray |
The ArrayBuffer to send to the JavaScript context. An empty ArrayBuffer is supported. |
postMessage
@RequiresFeature(name = WebViewFeature.WEB_MESSAGE_LISTENER, enforcement = "androidx.webkit.WebViewFeature#isFeatureSupported")
abstract fun postMessage(message: String): Unit
Post a String message to the injected JavaScript object which sent this JavaScriptReplyProxy.
| Parameters | |
|---|---|
message: String |
The String data to send to the JavaScript context. |