广电云 JSBridge & SDK 集成说明

Version: 1.2.0

该文档主要分两部分介绍:

1、广电云bridge V2版本简要说明

2、广电云sdk V2版本所提供的业务能力

该项技术的主要应用场景:

为打通广电云H5端与客户端的一些功能交互,让客户端可以捕获一些用户操作,定制一些数据埋点或响应不同的业务流程,提供双方通信的能力。

保留js关键字: _gdyBridge_gdyJsApi

GdyJsBridge2

安卓版本: 项目地址 集成引导 实践用例

IOS版本: 项目地址 集成引导 实践用例

简介

V2版本后,我们给客户端提供了资源包,无需引入额外的js资源和自己实现通信接收的部分,方便开发者快速集成,在集成之前,请详细阅读集成引导实践用例,文档内不再对Bridge部分进行额外的说明。

GdySdk2

H5在页面加载时会自行判断广电云bridge的集成与否,来决定是否继续挂载sdk方法

H5端调用客户端

客户端需先使用webView.register注册方法,用户在H5端进行操作时会通过bridge调用客户端注册的方法,即可进行对应业务处理

方法名 参数说明 操作说明 备注 支持模块
userOperate 接收结构体如 {type: “xxxx”},type有两种类型comment(聊天)、like(点赞) 用户互动操作(目前支持参与聊天、点赞) 现场直播、电台直播、图文直播、电视直播
loginRequest 用户登录操作 在未打开受限模式下,触发登录同时会执行URL跳转,受限模式打开则不跳转 现场直播、电台直播、图文直播、电视直播、新版聚合页
logoutRequest 接收结构体{backUrl: “xxxx”},backUrl为页面跳转地址 返回参数data中disableJumpBackUrl字段控制个人中心是否自动跳转 用户登出操作 在未打开受限模式下,沿用以前逻辑 个人中心

在 JAVA 中以 loginRequest 为例

webView.register("loginRequest", () -> {
// do something
});

客户端调用H5端

客户端可使用webView.callJsFunction调用方法,在符合正常的集成环境里,H5端会在合适的加载过程中注册可供客户端调用的方法,之后响应正常流程

方法名 参数说明 说明 支持模块
onTokenInject 传入结构体如{ token: “xxxx”} Token 注入,无刷新登录 现场直播、电台直播、图文直播、电视直播、新版聚合页
onLimitedMode 传入boolean值,true/false,不传值默认使用true 调用该方法,传入true将开启页面受限模式,受限模式下触发登录不执行 URL 跳转;传入false将关闭受限模式,受限模式关闭的情况下,将执行与web端一致的登录逻辑。受限模式状态将持续保存在cookie中,即全平台生效,因此在本平台的不同应用中设置一次即可,如遇到A应用中需要限制默认登录(即使用APP等客户端登录),而B应用中需要使用默认登录,则对接方需要在用户触发A应用的登录前打开受限模式,在用户进入B应用后手动关闭受限模式。 现场直播、电台直播、图文直播、电视直播、新版聚合页

在 JAVA 中以 onTokenInject 为例

JSONObject object = new JSONObject();
object.put("token", "xxxx");
Object[] args = {object};
webView.callJsFunction("onTokenInject", args, () -> {
  // do something
});

常见问题

  1. v2版本上线后,v1版本会下线吗?

    v1版本暂时不会下线,我们将保持一定的时间让v2和v1版本共存,但是v1版本目前进入停止维护阶段,未来我们仅在v2版本的sdk中开放更多能力,烦请优先集成v2版本,v1版本的用户也可以逐渐迁移至v2版本。另外v1中我们需要自己把js注入客户端,在v2中不用有这方面的负担。

  2. bridge和sdk是什么关系?

    bridge提供给我们通信的能力,sdk提供给我们业务交互的能力,两者的关系如同桥和桥上的人。

最后编辑: 陆志强  文档更新时间: 2024-11-14 10:47   作者:广电云技术部