lbz客户端与H5交互sdk定义文档
一、APP相关
1.是否是APP环境
H5调用示例:
1 | var env = LBZSdk.app.isAppEnv; // true | false |
说明:此方法不需要客户端提供接口
2.获取APP信息
接口名:
core.getAppInfo
传入参数:
(function(info){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.app.getInfo(function(info){ |
说明:回调字段可能有修改
3.是否安装某个应用
接口名:
core.hasInstalled
传入参数:
(opt, function(info){})
opt参数示例:
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.app.hasInstalled({name: 'weixin'},function(res){ |
4.监听app退出到后台
接口名:
core.onPause
传入参数:
(function(res){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.gEvent.enable('onPause');// 取消注册监听把"enable"换成"disable" |
5.监听app从后台回显
接口名:
core.onResume
传入参数:
(function(){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.gEvent.enable('onResume');// 取消注册监听把"enable"换成"disable" |
二、获取设备信息,网络状态
1.获取设备信息
接口名:
core.getDeviceInfo
传入参数:
(function(info){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.device.getInfo(function(info){ |
2.获取电量
接口名:
core.getPowerLevel
传入参数:
(function(power){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.device.getPower(function(power){ |
3.获取设备存储空间
接口名:
core.getSpaceSize
传入参数:
(function(size){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.device.getSpaceSize(function(size){ |
#### 4.监听屏幕旋转(不需要这个接口)接口名:core.onOrientationChange传入参数:(function(net){})回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.gEvent.enable('onOrientationChange');// 取消注册监听把"enable"换成"disable" |
5.设置屏幕方向
接口名:
core.setOrientation
传入参数:
(opt, function(net){})
opt参数示例:
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.device.setOrientation({"orientation": "landscape"}, function(res){ |
6.获取网络
接口名:
core.getNetwork
传入参数:
(function(net){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.network.getInfo(function(net){ |
7.监听网络
接口名:
onNetworkChange
传入参数:
(function(net){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.gEvent.enable('onNetworkChange');// 取消注册监听把"enable"换成"disable" |
三、登陆和用户
1.获取登陆信息
接口名:
fun.isLogin
传入参数:
(function(flag){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.user.isLogin(function(flag){ |
#### 2.获取用户信息(废弃,H5页面上直接调用接口获取用户信息)接口名:fun.getUserInfo传入参数:(function(info){})回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.user.getInfo(function(info){ |
说明:如果获取不到用户信息则返回为空{}
3.登陆
接口名:
fun.userLogin
传入参数:
(function(info){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.user.login(function(info){ |
4.重新授权(H5用参数必传,且为web)
接口名:
fun.reGrant
传入参数:
(opt, function(res){})
opt示例如下:
1 | { |
回调示例:
1 | { |
调用示例:
1 | LBZSdk.user.reGrant(function(res){ |
说明:1.在入口处如果授权失败,会进入授权失败页面(APP内置),点击页面空白处会调用该方法去重新走授权流程。当重新授权成功后,跳转到目标页。
2.用户未登陆状况下进入页面,然后页面上调起用户登陆接口,如果此时登陆授权失败,则需要跳转到H5的授权失败页面。该方法在H5授权失败页调用。
#### 5.登出(废弃)接口名:fun.userLogout传入参数:(function(res){})回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.user.logout(function(res){ |
#### 6.监听登陆状态改变(废弃)接口名:fun.onLoginChange传入参数:(function(res){})回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.user.on('onLoginChange', function(res){ |
说明:当action是logout时,其他字段为空
四、客户端存取数据
1.存储数据
接口名:
fun.setData
传入参数:
(opt, function(res){})
opt示例如下:
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.data.setData({key: 'abc', value: '123'}, function(res){ |
2.读取数据
接口名:
fun.getData
传入参数:
(opt, function(res){})
opt示例如下:
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.data.getData({key: ["abc", "123"]}}, function(res){ |
说明:如果获取不到数据则返回结果里data为空
3.复制到系统剪切板
接口名:
fun.copyToClipboard
传入参数:
(opt, function(res){})
opt示例如下:
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.data.copyToClipboard({data: 'abc123'}, function(res){ |
4.读取系统剪切板内容
接口名:
fun.getClipboard
传入参数:
(function(res){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.data.getClipboard(function(res){ |
说明:如果获取不到数据则返回结果里data为空
五、webView相关
1.打开新窗口
接口名:
fun.openWebview
传入参数:
(opt)
opt示例如下:
1 | { |
说明:type 可选”new”和”cur”,指定是否需要新开webview,默认”cur”
回调示例:
1 | 无回调 |
H5调用示例:
1 | LBZSdk.win.open({url: 'http://www.le.com', type: 'new', title: '乐视视频'}); |
2.窗口前进一页
接口名:
fun.WebviewForward
传入参数:
(function(res){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.win.forward(function(res){ |
说明:当webview里没有下一页的时候status返回false
3.窗口后退一页
接口名:
fun.WebviewBack
传入参数:
(function(res){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.win.back(function(res){ |
说明:当webview里没有上一页的时候status返回false
4.后退到指定url
接口名:
fun.backToUrl
传入参数:
(opt, function(res){})
opt示例
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.win.backToUrl({"url": "http://m.le.com/"}, function(res){ |
说明:
1.如果历史纪录里没有该url,则不做处理,回调函数返回false;
2.如果历史纪录里有且只有一个,则回退到指定url;
3.如果历史纪录里有多个指定的url,则回退到最外层的那个,即最开始打开的那个指定url
5.设置窗口属性
接口名:
fun.setWebview
传入参数:
(opt, function(res){})
opt示例
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.win.set({"title": "乐必中", "bg": "150B3B", "textColor": "ffffff", "themes": "light", "backIcon": "http://i2.letvimg.com/lc07_img/201812/13/14/46/back_light@3x.png", "closeIcon": "http://i0.letvimg.com/lc07_img/201812/13/14/46/close_light@3x.png"}, function(res){ |
6.注册返回按钮阻止事件
– 需要在url中加参数 backInterrupt=1
– 如果想定制化提示文案或者按钮文案,需要在url里加参数:interruptTitle, interruptCo, interruptYesText,interruptNoText
– 默认提示文案: “确认返回” “取消” “确定”
– url示例:http://lebz.le.com/?backInterrupt=1&interruptTitle=大爷,不再玩会儿了&interruptCo=以后常来啊&interruptYesText=不玩了&interruptNoText=滚
接口名:
onBackInterrupt
传入参数:
(function(net){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.gEvent.enable('onBackInterrupt');// 取消注册监听把"enable"换成"disable" |
#### 5.调起APP原生页面(不需要这个接口)接口名:fun.openNative传入参数:(opt)opt示例如下:
1 | { |
回调示例:
1 | 无回调 |
H5调用示例:
1 | LBZSdk.win.openNative({url: 'user_center'}); |
说明:传入的url需要提前知道
六、弹框
1.打开弹框
接口名:
fun.Alert
传入参数:
(opt, function(res){})
opt示例如下:
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.alert.open({title: '显示标题', content: '显示的内容', buttons: ['好的','取消']}, function(res){ |
说明:1.如果传入的参数中buttons只有一个,则默认显示”确认”按钮
2.如果之前已有一个弹出框了,则覆盖之前的
2.toast
接口名:
fun.Toast
传入参数:
(opt)
opt示例如下:
1 | { |
回调示例:
1 | 无回调 |
H5调用示例:
1 | LBZSdk.alert.toast({dur: 3000, pos: 0, content: '分享成功\n获得20金币'}) |
七、分享
1.打开分享弹框
接口名:
fun.openShare
传入参数:
(opt, function(){})
opt示例如下:
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.share.open({ |
说明:1.一期只支持三种渠道分享:微信朋友圈,微信好友,新浪微博
2.此分享是页面里用户点击按钮后手动触发的分享,与 showMenuShare 不同
2.显示右上角分享按钮
接口名:
fun.showMenuShare
传入参数:
(opt, function(){})
opt示例如下:
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.share.showMenuShare({ |
3.关闭右上角分享按钮
接口名:
fun.hideMenuShare
传入参数:
(function(){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.share.hideMenuShare(function(res){ |
4.注册右上角分享监听
接口名:
onMenuShare
传入参数:
(function(net){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.gEvent.enable('onMenuShare');// 取消注册监听把"enable"换成"disable" |
#### 2.分享(废弃)接口名:fun.callShare传入参数:(opt, function(res){})opt示例如下:
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.share.callShare({ |
说明:传入的参数可能需要根据不同的渠道差异化
八、支付
1.调用支付
接口名:
fun.pay
传入参数:
(opt, function(res){})
opt示例如下:
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.pay.payOrder({goodsId: 'abcd1234', channel: 'weixin'}, function(res){ |
九、缓存
1.更新缓存
接口名:
fun.updateCache
传入参数:
(function(res){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.cache.updateCache(function(res){ |
十、日期、时间选择
1.日历选择
接口名:
fun.selectDate
传入参数:
(opt, function(res){})
opt示例如下:
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.calendar.select({ |
十一、第三方原生APP相关
1.打开商品详情页
接口名:
fun.openDetail
传入参数:
(opt, function(res){})
opt示例如下:
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.native.openDetail({"channel": "taobao", "id": 1213121}, function(info) { |
十二、pomelo(仅供安卓4.4以下)
1.init
接口名:
fun.initPomelo
传入参数:
(opt, function(res){})
opt示例如下:
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.pomelo.init({ |
2.request
接口名:
fun.requestPomelo
传入参数:
(opt, function(res){})
opt示例如下:
1 | { |
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.pomelo.request("fruit.fruitHandler.select", { |
3.disconnect
接口名:
fun.disconnectPomelo
传入参数:
()
H5调用示例:
1 | LBZSdk.pomelo.disconnect(); |
4.监听pomelo
接口名:
core.onPomeloEvent
传入参数:
(function(res){})
回调示例:
1 | { |
H5调用示例:
1 | LBZSdk.gEvent.enable('onPomeloEvent');// 取消注册监听把"enable"换成"disable" |
- 目前能想到的接口文档大致如此,做的过程中会有删改