shareBySystem

插件概述

本插件用来打开系统分享页面,暂未发现与其他插件有冲突,可分享文本、链接、图片(可多图)、视频、音频,支持官方提供的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 对象
  • 内部字段:
{
    state: true        //布尔型;true,调用分享成功标识
}

err:

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

示例代码

var shareBySystem = api.require('shareBySystem');
shareBySystem.openShareText({
    text: "text"
}, function(ret, err) {
    if(ret){
       alert($apiutil.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及更高版本

是否仍需要帮助? 请保持联络!
最后更新于 2023/09/22