API Reference
This page provides a detailed reference for the public APIs of JsBridge for both Java (Android) and JavaScript.
Java API (BridgeWebView
/ BridgeHelper
)
These methods are available on the BridgeWebView
instance in your Android code.
registerHandler(String handlerName, BridgeHandler handler)
Registers a Java handler that can be called from JavaScript.
handlerName
: AString
that JavaScript will use to identify this handler.handler
: An implementation of theBridgeHandler
interface, which has a single methodvoid handler(String data, OnBridgeCallback callBackFunction)
.
callHandler(String handlerName, String data, OnBridgeCallback callBack)
Calls a JavaScript handler registered with the given name.
handlerName
: The name of the JavaScript handler to call.data
: AString
payload to send to the JavaScript handler. Often a JSON string.callBack
: AnOnBridgeCallback
that will be invoked with the response data from JavaScript.
callHandlerPersistent(String handlerName, String data, OnBridgeCallback callBack)
Calls a JavaScript handler and establishes a persistent callback that can be invoked multiple times.
- Parameters: Same as
callHandler
. - Behavior: The
callBack
function is not removed after the first invocation.
sendToWeb(String data)
Sends data to the default JavaScript handler (the one registered with bridge.init
).
data
: AString
payload to send.
sendToWeb(String data, OnBridgeCallback responseCallback)
Sends data to the default JavaScript handler and provides a callback for a response.
data
: AString
payload to send.responseCallback
: AnOnBridgeCallback
for the JavaScript handler's response.
setDefaultHandler(BridgeHandler handler)
Registers a default handler to process messages sent from JavaScript via bridge.doSend
.
handler
: The defaultBridgeHandler
implementation.
JavaScript API (window.WebViewJavascriptBridge
)
These methods are available on the WebViewJavascriptBridge
object inside the WebView.
init(function(message, responseCallback))
Initializes the bridge and sets a default message handler.
function(message, responseCallback)
: The callback function to handle messages sent from Java viasendToWeb
. It receives the message payload and a callback to send a response.
registerHandler(handlerName, function(data, responseCallback))
Registers a JavaScript handler that can be called from Java.
handlerName
: AString
name for the handler.function(data, responseCallback)
: The function to execute. It receives data from Java and a callback to send a response.
callHandler(handlerName, data, function(responseData))
Calls a registered Java handler.
handlerName
: TheString
name of the Java handler.data
: A JavaScriptObject
orString
to be sent to Java.function(responseData)
: A callback that will be executed with the response from the Java handler.
callHandlerPersistent(handlerName, data, function(responseData))
Calls a Java handler and establishes a persistent callback that Java can invoke multiple times.
- Parameters: Same as
callHandler
. - Behavior: The callback function is not removed after Java invokes it the first time.
doSend(data, function(responseData))
Sends data to the default Java handler (the one set by setDefaultHandler
).
data
: A JavaScriptObject
orString
payload.function(responseData)
: A callback for the Java handler's response.
registerPersistentCallback(callbackId, function(data))
Manually registers a named, persistent callback function.
callbackId
: A uniqueString
ID for this callback.function(data)
: The callback function.
removePersistentCallback(callbackId)
Removes a manually registered persistent callback to prevent memory leaks.
callbackId
: TheString
ID of the callback to remove.