3DTouch 封装了 iPhone6s、iPhone6s plus 以后版本的手机特有的 3DTouch 功能。使用本原生插件需要支持 3DTouch 屏幕的手机和 iOS9.0 以上的操作系统
可以在代码中动态设置快捷菜单,也可以在 Info.plist 里面配置快捷菜单,配置方法请参考链接里面的”配置 3DTouch 应用快捷菜单“://community.yonyou.com/forum.php?mod=viewthread&tid=20
监听通过快捷菜单打开应用。建议在首页的apiready方法里面进行监听。
android通过appintent监听,详情见api文档
setListener(callback(ret, err))
ret:
类型:JSON 对象
内部字段:
{
type: //被点击的菜单的标识,字符串类型
title: //被点击的菜单标题,字符串类型
subtitle: //(可选项)被点击的菜单副标题,字符串类型
userInfo: //(可选项)自定义信息,JSON对象
}
var DTouch = api.require('3DTouch');
DTouch.setListener(
function(ret, err) {
var type = ret.type;
if (type == 'com.mycompany.myapp.openfavorites') {
}
}
);
iOS9及以上系统
可提供的1.0.0及更高版本
动态设置应用快捷菜单。
iOS如果在Info.plist里面配置了静态的应用快捷菜单,两者不会覆盖。
setShortcutItems({params})
items:
[{
type:'', //菜单项的标识,字符串类型
title:'', //菜单标题,字符串类型
subtitle:'', //(可选项)菜单子标题,字符串类型
icon:{ //(可选项)菜单图标,JSON对象
file:'', //(可选项)图标文件路径,需放置在widget目录下,如widget/image/icon1.png。图标必须是单色的png格式图片,尺寸建议为105*105,若配置了该字段将忽略type字段。字符串类型
type:0 //(可选项)使用系统提供的图标,请参考常量里面的“应用快捷菜单图标类型”。数字类型(仅iOS)
},
userInfo:{ //(可选项)附加信息,JSON对象
'key':'value'
}
}]
var DTouch = api.require('3DTouch');
DTouch.setShortcutItems({
items: [{
type: 'com.api.testapp.favorite',
title: 'Favorites',
icon: {
file: 'widget/image/open-favorites'
},
userInfo: {
'key1': 'value1'
}
}, {
type: 'com.api.testapp.compose',
title: 'New Message',
icon: {
type: 0
},
userInfo: {
'key2': 'value2'
}
}]
});
iOS9及以上系统,android7.1以上
可提供的1.0.0及更高版本
更新应用快捷菜单。
updteShortcut({params},function(ret))
items:
[{
type:'', //需要更新的菜单项的标识,字符串类型
title:'', //菜单标题,字符串类型
subtitle:'', //(可选项)菜单子标题,字符串类型
icon:{ //(可选项)菜单图标,JSON对象
file:'', //(可选项)图标文件路径,需放置在widget目录下,如widget/image/icon1.png。图标必须是单色的png格式图片,尺寸建议为105*105,若配置了该字段将忽略type字段。字符串类型
},
userInfo:{ //(可选项)附加信息,JSON对象
'key':'value'
}
}]
ret:
类型:JSON 对象
内部字段:
{
status:, //布尔类型,是否设置成功
}
var DTouch = api.require('3DTouch');
DTouch.updteShortcut({
items: [{
type: 'com.api.testapp.favorite',
title: 'Favorites',
icon: {
file: 'widget/image/open-favorites'
},
userInfo: {
'key1': 'value1'
}
}, {
type: 'com.api.testapp.compose',
title: 'New Message',
icon: {
file:'widget://image/myin.png'
},
userInfo: {
'key2': 'value2'
}
}]
});
android7.1以上
可提供的1.0.0及更高版本
删除应用快捷菜单。
removeShortcut({params},function(ret))
types:
['', //字符串类型需要删除的菜单项标识
]
ret:
类型:JSON 对象
内部字段:
{
status:, //布尔类型,是否设置成功
}
var DTouch = api.require('3DTouch');
DTouch.removeShortcut({
types: ['']
});
android7.1以上
可提供的1.0.0及更高版本
应用快捷菜单图标类型,数字类型(仅iOS)
0 // compose
1 // play
2 // pause
3 // add
4 // location
5 // search
6 // share
7 // prohibit iOS9.1及以后系统有效
8 // contact iOS9.1及以后系统有效
9 // home iOS9.1及以后系统有效
10 // mark location iOS9.1及以后系统有效
11 // favorite iOS9.1及以后系统有效
12 // love iOS9.1及以后系统有效
13 // cloud iOS9.1及以后系统有效
14 // invitation iOS9.1及以后系统有效
15 // confirmation iOS9.1及以后系统有效
16 // mail iOS9.1及以后系统有效
17 // message iOS9.1及以后系统有效
18 // date iOS9.1及以后系统有效
19 // time iOS9.1及以后系统有效
20 // capture photo iOS9.1及以后系统有效
21 // capture video iOS9.1及以后系统有效
22 // task iOS9.1及以后系统有效
23 // task completed iOS9.1及以后系统有效
24 // alarm iOS9.1及以后系统有效
25 // bookmark iOS9.1及以后系统有效
26 // shuffle iOS9.1及以后系统有效
27 // audio iOS9.1及以后系统有效
28 // update iOS9.1及以后系统有效
iOS系统
可提供的1.0.0及更高版本