shareBySystem

来自于:开发者立即使用

openShareText
openShareImge openShareAudio openShareVideo

模块概述

本模块用来打开系统分享页面,暂未发现与其他模块有冲突,可分享文本、链接、图片(可多图)、视频、音频,支持官方提供的fs://,widget://,cache://协议并支持远程地址。

\==注意==:

  1. 系统分享并不是所有应用都能分享,只有目标应用加入了系统分享中,系统才会发现。

  2. 虽然视频与音频的分享也支持远程链接,但在此==建议大家使用本地访问的方式==,限于系统的要求,当你提供远程地址时,实际上我是把此文件下载到缓存目录中,所以过大的视频或者音频不建议大家使用远程链接的方式,可以使用官网提供的 ==api.download== 在空闲时先把文件下载到本地然后再分享。

  3. 远程链接地址会默认保存到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 对象
  • 内部字段:
  1. {
  2. state: true //布尔型;true,调用分享成功标识
  3. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. { }

示例代码

  1. var shareBySystem = api.require('shareBySystem');
  2. shareBySystem.openShareText({
  3. text: "text"
  4. }, function(ret, err) {
  5. if(ret){
  6. alert($api.jsonToStr(ret));
  7. }
  8. });

openShareImge

分享图片

openShareImge({params},callback(ret, err))

params

paths:

  • 类型:JSON 数组
  • 描述:(必填项) 需要分享的图片,支持widget://,fs://,cache://协议及远程图片地址
  • 默认值:无
  • 内部字段
  1. {
  2. filename:
  3. - 类型 String 字符串
  4. - 描述 (可选项)若path地址为远程地址,可通过此参数设置文件的别名,注意:别名并不会更改远程网络文件的文件后缀
  5. - 默认值 path为远程地址,则默认值为地址中的文件名称
  6. path:
  7. - 类型 String 字符串
  8. - 描述 (必填项)需要分享的图片,支持widget://,fs://,cache://协议及远程图片地址
  9. - 默认值:无
  10. }

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. state: true //布尔型;true,调用分享成功标识
  3. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. errPath : "" // 字符串: 上传路径中错误的路径
  3. msg : "" // 字符串:错误描述信息(中文文本),如下
  4. // 1:参数为空(上传的为空数组)
  5. // 2:文件不存在
  6. // 3:上传文件类型错误,请检查参数
  7. // 4:地址上传错误(不符合协议标识或不是远程地址)
  8. // 5: path 参数为空(数组中path参数为空)
  9. }

示例代码

  1. var shareBySystem = api.require('shareBySystem');
  2. var params = {
  3. paths: [{
  4. filename : 'img1',
  5. 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"
  6. }, {
  7. filename : 'img2',
  8. 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"
  9. }, {
  10. path : "cache://test_img.jpg"
  11. }, {
  12. path : "widget://image/test_img.jpg"
  13. }, {
  14. path : "fs://test_img.jpg"
  15. }
  16. ]
  17. }
  18. shareBySystem.openShareImge(params, function(ret, err) {
  19. if (ret) {
  20. alert(JSON.stringify(ret));
  21. } else {
  22. alert(JSON.stringify(err));
  23. }
  24. });

openShareAudio

分享音频

openShareAudio({params},callback(ret, err))

params

filename:

  • 类型 : String 字符串
  • 描述 : (可选项)若path地址为远程地址,可通过此参数设置文件的别名,注意:别名并不会更改远程网络文件的文件后缀
  • 默认值 : 若path为远程地址,则默认值为地址中的文件名称

path:

  • 类型 : String 字符串
  • 描述 : (必填项)需要分享的图片,支持widget://,fs://,cache://协议及远程图片地址
  • 默认值:无

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. state: true //布尔型;true,调用分享成功标识
  3. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. errPath : "" // 字符串: 上传路径中错误的路径
  3. msg : "" // 字符串:错误描述信息(中文文本),如下
  4. // 1:参数为空(空对象)
  5. // 2:文件不存在
  6. // 3:上传文件类型错误,请检查参数
  7. // 4:地址上传错误(不符合协议标识或不是远程地址)
  8. // 5: path 参数为空
  9. }

示例代码

  1. var shareBySystem = api.require('shareBySystem');
  2. var params = {
  3. // path: "widget://res/test.mp3"
  4. // path: "fs://test.mp3"
  5. // path: "cache://test.mp3"
  6. filename : "test"
  7. path : "https://www.sample-videos.com/audio/mp3/crowd-cheering.mp3"
  8. }
  9. shareBySystem.openShareAudio(params, function(ret, err) {
  10. if (ret) {
  11. alert(JSON.stringify(ret));
  12. } else {
  13. alert(JSON.stringify(err));
  14. }
  15. });

openShareVideo

分享视频

openShareVideo({params},callback(ret, err))

params

filename:

  • 类型 : String 字符串
  • 描述 : (可选项)若path地址为远程地址,可通过此参数设置文件的别名,注意:别名并不会更改远程网络文件的文件后缀
  • 默认值 : 若path为远程地址,则默认值为地址中的文件名称

path:

  • 类型 : String 字符串
  • 描述 : (必填项)需要分享的图片,支持widget://,fs://,cache://协议及远程图片地址
  • 默认值:无

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. state: true //布尔型;true,调用分享成功标识
  3. }

err:

  • 类型:JSON 对象
  • 内部字段:
  1. {
  2. errPath : "" // 字符串: 上传路径中错误的路径
  3. msg : "" // 字符串:错误描述信息(中文文本),如下
  4. // 1:参数为空(空对象)
  5. // 2:文件不存在
  6. // 3:上传文件类型错误,请检查参数
  7. // 4:地址上传错误(不符合协议标识或不是远程地址)
  8. // 5: path 参数为空
  9. }

示例代码

  1. var shareBySystem = api.require('shareBySystem');
  2. var params = {
  3. // path: "widget://res/test.mp4"
  4. // path: "fs://test.mp4"
  5. // path: "cache://test.mp4"
  6. filename : "test"
  7. path : "https://www.sample-videos.com/video123/mp4/720/big_buck_bunny_720p_1mb.mp4"
  8. }
  9. shareBySystem.openShareVideo(params, function(ret, err) {
  10. if (ret) {
  11. alert(JSON.stringify(ret));
  12. } else {
  13. alert(JSON.stringify(err));
  14. }
  15. });

可用性

Android系统

可提供的1.0.0及更高版本