@zongwu
2016-12-27T06:11:57.000000Z
字数 4134
阅读 559
开发设计
将所有属性和方法封入 window.iPudong 或 iPudong 这个全局对象注意区分大小写。
另外出于安全因素,请务必判定仅针对可识别的内部网址(如:以http://www.healthbok-inc.com/ 开头的)再发送 Authorization 头和支持iPudong对象,避免跨站问题。
统一采用第三方库支持,实现iPudongJSBridge
JavaScript 桥联。
bridge.init(function (message, responseCallback) {
log('JS got a message', message);
var data = {'Javascript Responds': 'Wee!'};
log('JS responding with', data);
responseCallback(data);
});
状态:通用接口 建议所有WebView页面都增加 该配置
应用版本:BP-V3.3
调用方:JS
方法描述:弹窗提示 附带按钮实现
参数: configuration
JSON字符串
// ======= id: =======
* prev 表示返回上一个WebView页面,若无WebView页面则关闭WebView 容器;
* close 关闭WebView容器
* share 分享
* favorite 收藏/取消收藏;
// ======= gravity: =======
* start 表示左侧对齐
* end 表示右侧对齐
// ======= index: =======
* 0 表示第1个位置
* 1 表示第2个位置
// ======= 举例: =======
index = 0 , gravity = start --> XOOO
index = 1 , gravity = start --> OXOO
index = 0 , gravity = end --> OOOX
index = 1 , gravity = end --> OOXO
// 注意: index需要与gravity参数关联使用(未指定gravity,则默认为start);
{
"title": "我是标题",
"state": "hide|show",
"operates": [
{
"index": 0,
"gravity": "start",
"id": "prev"
},
{
"index": 1,
"gravity": "start",
"id": "close"
},
{
"index": 0, // 表示第1个位置
"gravity": "end",
"id": "share"
},
{
"index": 1,
"gravity": "end",
"id": "favorite"
}
]
}
// 示例渲染样式
* [prev][close]我是标题[favorite][share]
状态:适用于媒介类型的WebView 界面
应用版本:BP-V3.3
调用方:JS
方法描述:进入媒介详情,用于更新状态栏状态;进入媒介详情,用于操作收藏该媒介;(暂调用JS接口postShareBasic()获取分享状态)
参数:configuration
JSON字符串
{
"id": 40, // 媒介id 与接口返回 id 相同
"isFavorite":0 // 收藏状态
}
状态:适用于媒介类型的WebView 界面
应用版本:BP-V3.3
调用方:JS
方法描述:短暂提示用户后自动消失(Toast)
参数: content
提示信息
状态:
适用于媒介类型的WebView 界面
应用版本:BP-V3.3
调用方:JS
方法描述:打开对话框提示面板
参数:configuration
JSON字符串
// ======= useType: =======
useType <= 100 表示使用Native 原生对话框;
useType > 100 表示使用自定义 对话框;
// ======= useType 实例: =======
useType = 0 //表示拥有<确认>,对应配置positive;
useType = 1 //表示拥有<确认>/<取消>,对应配置positive/negative;
userType = 101 //表示使用配置<提现成功>
{
"title": "分享标题",
"text": "分享内容",
"useType": 0,
"operates": { // useType <= 100 , 才会有 operates 节点;
"negative": "取消", // 显示名称
"negative_value": "cancel", // 值定义 , 如Web需知道用户点击事件 则原样将 value 带回;
"positive": "确认",
"positive_value": "confirm"
}
}
状态:适用于媒介类型的WebView 界面
应用版本:BP-V3.3
调用方:JS
方法描述:调起意图
参数: configuration
JSON字符串
openLink
方法描述 :打开新的Webview窗口
参数:url
表示新打开窗口的链接
openQA
方法描述 :打开答题窗口
参数:mediaId
表示指定媒介文章关联的唯一标识 id;
closeWindow
方法描述 :关闭当前窗口
参数:无
prevWindow
方法描述 :返回到前一个界面,若已无法返回则关闭当前窗口
参数:无
openBanner
方法描述 :打开一个新的广告页面
参数:无
openMediaDetail
方法描述 :打开媒介详情
参数:toolbar
的配置对象,media
的配置对象
openMediaDetailWithQA
方法描述 :打开媒介详情
参数:
feature
的配置对象
media
的配置对象
type=answer_question
表示去答题,type=exam
表示去考试
传入JSON格式 = {
"type": "{功能类型}",
"text": "{按钮描述}"
}
logout
方法描述 :注销登陆
参数:无
openScan
方法描述 :扫描条码
参数:{
"intent": "openScan",
"param": {
"useCase": "CourierNumber(快递单号)|DetectSerialNumber(检测序列号)"
}
}
openExamSummary
方法描述 :打开考试概述页面
参数:{
"intent": "openExamSummary",
"param": {
" exampaperId ": "10010"
}
}
状态:适用于媒介类型的WebView 界面
应用版本:BP-V3.3
调用方:APP
方法描述:接收服务端传来的意图
参数: configuration
JSON字符串
方法描述 :接收文章传来的分享内容
参数:{
"intent": "receiveShareBody",
"param": {
"id": 40,
"url": "http://www.healthbok.com",
"title": "我是分享标题",
"text": "我是分享内容",
"img": "我是分享的图标",
"video": "我是分享的视频"
}
}
• id 是为了唯一标识媒介;(保留字段用于更新分享次数)
• video 非空时 , 调用客户端的视频分享;
• img 非空时 , 调用客户端的图片分享;
• video & img 都为空时, 调用客户端的文本分享;
• (优先级: * video > img > text)
video & img & text 三者都为空 或 title 为空,则客户端不会构建分享行为;
状态:已废弃 请使用 postDialog
应用版本:BP-V3.2
调用方:JS
方法描述:通用接口 建议所有WebView页面都增加 该配置
参数:
content
提示内容callback
确定按钮事件
状态:已废弃 请使用 postDialog
应用版本:BP-V3.2
调用方:JS
方法描述:弹窗提示
参数:content
提示内容
状态:已废弃 请使用 postDialog
应用版本:BP-V3.2
调用方:JS
方法描述:错误标识
参数:desc
提示内容
状态:已废弃 请使用 postIntent
应用版本:BP-V3.2
调用方:JS
方法描述:打开到作答页面(单道题目)
参数:articleId
文章id
状态:已废弃 请使用 postDialog
应用版本:BP-V3.2
调用方:JS
方法描述:打开提现成功对话框
状态:已废弃 请使用 postIntent
应用版本:BP-V3.1
调用方:JS
方法描述:打开WebView跳转到指定的url。
状态:已废弃
应用版本:BP-V3.1
调用方:JS
方法描述:当标题栏可见时更新标题栏文案。
状态:已废弃 请使用 postIntent
应用版本:BP-V3.1
调用方:JS
方法描述:关闭装载 Webview 的容器
参数:
label = 0
—— 关闭整个容器label = 1
—— 关闭当前页面
状态:已废弃 请使用postToast
应用版本:BP-V3.1
调用方:JS
方法描述:短暂提示用户,Toast 会主动消失