基本使用方法

集成与初始化

简介

本文档为 Android 与 iOS 通用的 JSAPI 使用介绍。

Android:安卓的一部分内置 JSAPI 在 H5 容器 SDK 中,另一部分需要依赖三方库能力的扩展 JSAPI 在 TMFDemo 中。

iOS:iOS 的 JSAPI 通过 cocoapods 使用 subSpec 的方式进行管理,可以按需求进行灵活添加。

集成

  • Android
  • iOS
    • 使用所有 JSAPI -> pod 'TMFJSAPIs'
    • 使用部分 JSAPI -> pod 'TMFJSAPIs/TMFJSAPIs_Location'(定位),pod 'TMFJSAPIs/TMFJSAPIs_Shark' (Shark)

使用方式

H5 调用 Native

TMFJSBridge.invoke(apiName, {
    param0 : param0,            // any,参数 0
    param1 : param1,            // any,参数 1
    // ...
    paramN : paramN,            // any,参数 n
}, function (res) {
    console.log({
        ret     : res.ret,      // integer,接入层错误码,有效值:0 表示成功,1 表示接入层失败,2 表示业务层失败,-1 表示取消(部分接口有取消操作)
        errMsg  : res.errMsg,   // string,接入层错误详细信息
    });
});
入参 类型 描述
param0 - paramN any 传递参数
callback function 返回值回调函数
出参 类型 描述
ret integer 接入层错误码
0: 成功
1: 接入层失败
2: 业务层失败
-1: 取消(部分接口有取消操作)
errMsg string 接入层错误详情信息

H5 监听 Native事件

document.addEventListener(eventName, function (e) {
    var res = e.tmf;
    console.log({
        param0 : res.param0,    // any,参数 0
        param1 : res.param1,    // any,参数 1
        // ...
        paramN : res.paramN,    // any,参数 n
    });
}, false);
参数 类型 描述 必选 默认值
eventName string 事件名 Y /
e object 返回值 Y /

H5 监听 Jsbridge 初始化完成事件

H5 代码需要监听 Jsbridge 初始化完成事件后,H5 页面中才会存在 TMFJSBridge 对象,需要在 callback 回调中使用 TMFJSBridge 调用对应的 native 方法,监听参考代码如下:

/**
 * 当 window.onload 后,H5 容器会初始化,TMFJSBridge 会注入容器,然后触发 TMFJSBridge 初始化完毕(TMFJSBridgeReady)事件。
 * TMFJSBridge 注入是一个异步过程,因此尽可能监听该事件后,再使用 TMFJSBridge.invoke 来调用 JS API。
 */
function tmf_ready(callback) {
    if (window.TMFJSBridge) {
        callback && callback();
    } else {
        document.addEventListener("TMFJSBridgeReady", callback, false);
    }
}
Copyright © 2013-2023 Tencent Cloud. all right reserved,powered by GitbookUpdate Time 2023-08-31 14:46:07

results matching ""

    No results matching ""