application提供了千牛移动提供的原生能力,比如打开聊天窗口(openChat
)、获取地址位置(location
)和打开网址(openWebsite
)等,点击查看api列表和具体用法
补充:
:试用openWindow/openPlugin协议时,需要注意iOS下directUrl
和callbackUrl
需要在同一个域下。
QN.app.invoke({ api: 'openPlugin', query: { appkey: 23093073 }, settings: { timeout: 2000 }, success() {}, error() {} });
除了上述方式外,QAP支持Promise方式调用,避免回调金字塔(Pyramid of Doom):
// Promise 形式 QN.app.invoke({ api: 'openPlugin', query: { appkey: 23093073 } }).then(result => { console.log(result); }, error => { console.log(error); });
由于服务端没来得及更新,文档里的写法还是旧版本写法。
旧版本JS-SDK用法:
var application = TOP.mobile.application; application.request({ event:'openPlugin', biz:{ appkey : '4272' , category : 'shangpinguanli' , extraData : '{\"key\":\"value\"}' , directUrl : 'http://www.taobao.com' } });
旧写法改成新版本写法:event换成api
,biz换成query,application
变成app
。