Hybrid App 设置 - Cordova-Ionic SDK (v4)

提示

在进行 Hybrid App 设置之前,请先分别在 App 和网站上完成 Cordova-Ionic SDKWeb SDK 的安装。

通过设置,您无需更改 Hybrid App 中网站的代码,也能让 Airbridge Cordova-Ionic SDK 处理应用内网站中的 Airbridge 相关操作。

使 Cordova-Ionic SDK 处理 Web SDK 操作

Cordova-Ionic SDK 可以代替 Web SDK 处理事件发送、设备设置和用户设置等命令。在 WebView 中加载网站之前,请使用 Airbridge.createWebInterfaceScriptAirbridge.handleWebInterfaceCommand 函数进行设置。

webTokenWeb SDK Token,可在 Airbridge 面板的 [设置]>[Token] 获取。

postMessageScript 是一段 JavaScript 代码,用于将 Web SDK 传递给 Cordova-Ionic SDK 的命令所存储的 payload 变量传递至 Cordova-Ionic 端。

command 是 Web SDK 传递给 Cordova-Ionic SDK 的命令。

123456789101112131415161718192021222324252627
async function open() {
    const script = await Airbridge.createWebInterfaceScript(
        'YOUR_WEB_SDK_TOKEN',
        (function (arg) {
            return `window.cordova_iab.postMessage(${arg})`;
        })
    );

    var url = 'https://...';
    var target = ;
    var options = 
    var inAppBrowserRef = cordova.InAppBrowser.open(url, target, options);

    inAppBrowserRef.addEventListener('loadstart', loadstartCallback);
    inAppBrowserRef.addEventListener('loadstop', ...);
    inAppBrowserRef.addEventListener('loaderror', ...);
    inAppBrowserRef.addEventListener('exit', ...);
    inAppBrowserRef.addEventListener('message', messageCallBack);

    function loadstartCallback(event) {
        inAppBrowserRef.executeScript({ code : script });
    }

    function messageCallBack(params){
        Airbridge.handleWebInterfaceCommand(JSON.stringify(params.data));
    }
}

注意事项

Was this page helpful?

Have any questions or suggestions?