shareBySystem
来自于:开发者立即使用
openShareText
openShareImge openShareAudio openShareVideo
模块概述
本模块用来打开系统分享页面,暂未发现与其他模块有冲突,可分享文本、链接、图片(可多图)、视频、音频,支持官方提供的fs://,widget://,cache://协议并支持远程地址。
\==注意==:
系统分享并不是所有应用都能分享,只有目标应用加入了系统分享中,系统才会发现。
虽然视频与音频的分享也支持远程链接,但在此==建议大家使用本地访问的方式==,限于系统的要求,当你提供远程地址时,实际上我是把此文件下载到缓存目录中,所以过大的视频或者音频不建议大家使用远程链接的方式,可以使用官网提供的 ==api.download== 在空闲时先把文件下载到本地然后再分享。
远程链接地址会默认保存到cache 目录中的shareSystem 文件夹中,文件名称为远程路径中的文件名称。
在此提供一个测试视频和音频下载的地址,如下:
https://www.sample-videos.com/index.php#sample-mp4-video
目前暂只支持安卓,后期将追加ios相关支持。
模块接口
openShareText
分享文本或链接
openShareText({params},callback(ret, err))
params
text:
- 类型:String 字符串
- 描述:(必填项)需要分享的文本或链接
- 默认值 : 无
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
state: true //布尔型;true,调用分享成功标识
}
err:
- 类型:JSON 对象
- 内部字段:
{ }
示例代码
var shareBySystem = api.require('shareBySystem');
shareBySystem.openShareText({
text: "text"
}, function(ret, err) {
if(ret){
alert($api.jsonToStr(ret));
}
});
openShareImge
分享图片
openShareImge({params},callback(ret, err))
params
paths:
- 类型:JSON 数组
- 描述:(必填项) 需要分享的图片,支持widget://,fs://,cache://协议及远程图片地址
- 默认值:无
- 内部字段
{
filename:
- 类型 : String 字符串
- 描述 : (可选项)若path地址为远程地址,可通过此参数设置文件的别名,注意:别名并不会更改远程网络文件的文件后缀
- 默认值 : 若path为远程地址,则默认值为地址中的文件名称
path:
- 类型 : String 字符串
- 描述 : (必填项)需要分享的图片,支持widget://,fs://,cache://协议及远程图片地址
- 默认值:无
}
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
state: true //布尔型;true,调用分享成功标识
}
err:
- 类型:JSON 对象
- 内部字段:
{
errPath : "" // 字符串: 上传路径中错误的路径
msg : "" // 字符串:错误描述信息(中文文本),如下
// 1:参数为空(上传的为空数组)
// 2:文件不存在
// 3:上传文件类型错误,请检查参数
// 4:地址上传错误(不符合协议标识或不是远程地址)
// 5: path 参数为空(数组中path参数为空)
}
示例代码
var shareBySystem = api.require('shareBySystem');
var params = {
paths: [{
filename : 'img1',
path : "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1548425550021&di=b46efd724f49b8c637ed4c0d053688bb&imgtype=jpg&src=http%3A%2F%2Fimg2.imgtn.bdimg.com%2Fit%2Fu%3D3988732177%2C3757318550%26fm%3D214%26gp%3D0.jpg"
}, {
filename : 'img2',
path : "https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1548430707287&di=7dfb5a24cb55020ce78f3d151b0d7172&imgtype=jpg&src=http%3A%2F%2Fimg3.imgtn.bdimg.com%2Fit%2Fu%3D3922201023%2C2083939012%26fm%3D214%26gp%3D0.jpg"
}, {
path : "cache://test_img.jpg"
}, {
path : "widget://image/test_img.jpg"
}, {
path : "fs://test_img.jpg"
}
]
}
shareBySystem.openShareImge(params, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
openShareAudio
分享音频
openShareAudio({params},callback(ret, err))
params
filename:
- 类型 : String 字符串
- 描述 : (可选项)若path地址为远程地址,可通过此参数设置文件的别名,注意:别名并不会更改远程网络文件的文件后缀
- 默认值 : 若path为远程地址,则默认值为地址中的文件名称
path:
- 类型 : String 字符串
- 描述 : (必填项)需要分享的图片,支持widget://,fs://,cache://协议及远程图片地址
- 默认值:无
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
state: true //布尔型;true,调用分享成功标识
}
err:
- 类型:JSON 对象
- 内部字段:
{
errPath : "" // 字符串: 上传路径中错误的路径
msg : "" // 字符串:错误描述信息(中文文本),如下
// 1:参数为空(空对象)
// 2:文件不存在
// 3:上传文件类型错误,请检查参数
// 4:地址上传错误(不符合协议标识或不是远程地址)
// 5: path 参数为空
}
示例代码
var shareBySystem = api.require('shareBySystem');
var params = {
// path: "widget://res/test.mp3"
// path: "fs://test.mp3"
// path: "cache://test.mp3"
filename : "test"
path : "https://www.sample-videos.com/audio/mp3/crowd-cheering.mp3"
}
shareBySystem.openShareAudio(params, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
openShareVideo
分享视频
openShareVideo({params},callback(ret, err))
params
filename:
- 类型 : String 字符串
- 描述 : (可选项)若path地址为远程地址,可通过此参数设置文件的别名,注意:别名并不会更改远程网络文件的文件后缀
- 默认值 : 若path为远程地址,则默认值为地址中的文件名称
path:
- 类型 : String 字符串
- 描述 : (必填项)需要分享的图片,支持widget://,fs://,cache://协议及远程图片地址
- 默认值:无
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
state: true //布尔型;true,调用分享成功标识
}
err:
- 类型:JSON 对象
- 内部字段:
{
errPath : "" // 字符串: 上传路径中错误的路径
msg : "" // 字符串:错误描述信息(中文文本),如下
// 1:参数为空(空对象)
// 2:文件不存在
// 3:上传文件类型错误,请检查参数
// 4:地址上传错误(不符合协议标识或不是远程地址)
// 5: path 参数为空
}
示例代码
var shareBySystem = api.require('shareBySystem');
var params = {
// path: "widget://res/test.mp4"
// path: "fs://test.mp4"
// path: "cache://test.mp4"
filename : "test"
path : "https://www.sample-videos.com/video123/mp4/720/big_buck_bunny_720p_1mb.mp4"
}
shareBySystem.openShareVideo(params, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
Android系统
可提供的1.0.0及更高版本