Skip to content

BpmApp JWN接口文档

wangjiujiu edited this page Oct 25, 2017 · 34 revisions

开始使用BpmApp JWN

首先,在使用JWN接口之前,你必须获取JWN接口对象,新版本的JWN已经自动为网页获取了JS对象。

var bpmbridget; // 我们可以直接使用bpmbridget来调用接口

比如关闭当前的页面:

bpmbridget.call("close");

关于数据传输的协议

JWN接口采用标准的JSON格式作为输入/输出协议。

输入标准格式

比如设置标题栏显示/隐藏的Json输入如下所示:

{visible: true/fasle}

输出标准格式

输出的标准格式通常带有下面两个参数:success和errorMsg,当success为false时,我们通常代码系统上的失败,errorMsg则输出错误详细信息。

{success: true, errorMsg: ""}

BpmApp JWN接口列表

设置标题栏

显示/隐藏标题栏

bpmbridget.call("setTitlebarVisible", 
                {visible: true/fasle}, // true代表显示 false代表隐藏
                function(result){ alert(result); });  // 这里返回处理结果

修改标题栏背景颜色

 bpmbridget.call("setTitlebarBgColor",
                 {bgColor: "#3892FF"}, // bgColor:颜色必须为十六进制颜色码
                 function(result){ alert(result); });

修改标题栏背景图片

 bpmbridget.call("setTitlebarBgImage",
                 {bgImgUrl: "https://xxxxxxxxxxxx/bg.png"}, // 图片的url地址
                 function(result){  alert(result); });

修改标题属性

bpmbridget.call("setTitlebarTextView",
                {title: "XXXX", fontSize: "19", fontColor: "#3892FF"}, 
                function(result){ alert(result); });

设置标题栏右边按钮

设置右边标题栏按钮,并可以实现自己的逻辑,使用如下方法:

  bpmbridget.call("bindRightBtn", 
                  {imageUrl: "http://xxxxxxxxx.png",
                  callback: "rightJs"}, // 其中rightJs是自定义的js方法,点击执行的是rightJs
                  function(result) {alert(result);});

窗体相关

关闭当前窗体

bpmbridget.call("close");

新建窗体

bpmbridget.call("startWindow",
                {url: "https://xxxxxxxxxx/webview.html", title: "hello"});

新建窗体并结束当前窗体

bpmbridget.call("skipWindow",
                {url: "https://xxxxxxxxxx/webview.html", title: "hello"});

绑定退出键

有的时候,我们需要绑定退出键来实现自己的逻辑,我们可以使用如下方法:

  bpmbridget.call("bindBackBtn", 
                  {callback: "tback"}, // 其中tback是自定义的js方法,当我们点击退出时,实际执行的是tback
                  function(result) { alert(result); });

解绑退出键

  bpmbridget.call("unbindBackBtn", function(result) {
                alert(result);
           });

4.文件处理

通用的文件的上传和下载依赖的是BPM提供的通用的上传和下载接口,如有特殊接口,需要另外实现。

文件上传

bpmbridget.call("uploadFile",
                {filePath: "/storage/emulated/0/1.pdf"}, 
                function(result){ alert(result); }); //这里会输出上传结果

文件下载

 bpmbridget.call("downloadFile",
                 {attachmentId: "abc", attachmentName: "3.doc", autoOpen: true}, //如果设置了autoOpen,下载完成后会自动打开
                 function(result){  alert(result); });

打开文件

 bpmbridget.call("openFile",
                 {openFilePath: "storage/emulated/0/1.png"});  //文件存储路径

文件选择器

bpmbridget.call("fileSelector", 
                {selectNum: 3}, 
                function(result) { alert(result); });

图片选择器

bpmbridget.call("getImages", 
                {selectNum: 3}, 
                function(result) { alert(result); });

视频选择器

bpmbridget.call("getVideos", 
                {selectNum: 3}, 
                function(result) { alert(result); });

用户相关

当前登录用户

bpmbridget.call("getUser", 
                function(result){ alert(result); });  //result返回的是用户登录信息

获取Token

 bpmbridget.call("getToken", 
                 function(result){ alert(result);}); //result返回的是Token信息

人员选择

 bpmbridget.call("userChoose", 
                 {selectNum: 5, users:[{id:"1",name:"张三"},{id:"2",name:"李四"}]}, // users代表已选人员
                 function(result) { alert(result);});

toast显示 toastType有五种类型:info,success,error,warning,normal

 bpmbridget.call("toastShow",
                  {toast:"5",     //toast信息内容,toastType有5种,设置后toast提醒的颜色不同
                   toastType:"info"});

Alert对话框

Alert触发自定义Js事件

 bpmbridget.call("bindAlert",
                 {dialogTitle:"标题",   //对话框的提示标题和内容
                  dialogInfo:"内容",
                  callback: "toastShow"},   //toastShow为自定义js事件
                  function(result) {alert(result);});

进度条

进度条显示

 bpmbridget.call("progressShow");

进度条隐藏

 bpmbridget.call("progressCancel");

百度地图位置信息获取

 bpmbridget.call("getLocation", 
       function(result){ alert(result); });