nativebridge-ios 0.1.1

nativebridge-ios 0.1.1

Hans Olav Nome 维护。



  • NRK Medieutvikling

nativebridge-ios

此 Swift 模块是您的应用和 webview JavaScript 之间的 RPC 通信桥接的本地部分。它旨在与它的 JavaScript 对应部分,即 nrkno/nativebridge,一起工作。

要求

除了 nrkno/nativebridge 之外,nativebridge-ios 还依赖于 WKWebView 和脚本消息处理程序来运行。

安装

nativebridge-ios 可以通过 CocoaPods 获取。要安装它,只需将以下行添加到您的 Podfile 中

pod 'nativebridge-ios'

示例

要运行示例项目,请克隆仓库,然后从 Example 目录中运行 pod install

用法

所有与javascript的通信都通过WebViewConnnection类来管理。

通信遵循一个协议,javascript和您的代码之间相互发送消息。消息有一个主题和一些数据。数据必须实现Codable协议。

建立javascript连接

必须通过添加一个脚本消息处理程序(WKScriptMessageHandler)来配置WKWebView实例,该处理程序将监听发送到'nativebridgeiOS'的消息。

有关如何操作的详细信息,请参阅示例项目。

发送数据

let data = SomeDataType()
webViewConnection.send(data: data, for: Topic.someTopic)

添加主题处理程序

为了让javascript发送的消息能产生反应,必须在WebViewConnnection实例中添加处理程序。

webViewConnection.addHandler(for Topic.someTopic, {
    (input: InputDataType, connection) in {
        let message = "Received incoming: '\(input.inputMessage)'"
        let output = OutputData(outputMessage: message)
        connection.send(data: output, for: Topic.someTopic)
    }
})

许可证

nativebridge-ios遵循MIT许可证。有关更多信息,请参阅LICENSE文件。