更新记录

1.5(2022-08-24)

修复iOS端shareMessageToBuddy接口不能使用问题。

1.4(2022-03-15)

统一分享Android和iOS的分享图片和视频shareMedia接口

查看更多

平台兼容性

Android Android CPU类型 iOS
适用版本区间:4.4 - 11.0 armeabi-v7a:未测试,arm64-v8a:未测试,x86:未测试 适用版本区间:9 - 15

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


快手授权登录与分享插件接口说明

注意:使用插件前先到快手开放平台申请KWAI_APP_ID,加载插件是配置KWAI_APP_ID, Android绑定包名和签名,ios绑定bundleId,打包时需要对应。

https://open.kuaishou.com

1. 插件对象

var sdkwx = uni.requireNativePlugin('KuaiShou-SdkWX');

2. 授权登录

//授权登录
sdkwx.auth({
    scope:"user_info",//设置授权范围(ios),Android在加载插件地方设置
    state:"state"//STATE安全参数,标识和用户或者设备相关的授权请求
}, function(res){
    console.log(res);
    if (res.errorCode == 1) {//授权成功
        var code = res.code;//临时授权码
    var state = res.state;//透传STATE安全参数
    } else if (res.errorCode == -1) {//取消授权
    var state = res.state;//透传STATE安全参数
    } else {//授权失败
        var errorCode = res.errorCode//错误码,参考https://open.kuaishou.com/platform/openApi?group=GROUP_OPEN_PLATFORM&menu=11
    }
});

3. 通过选择人或者群组分享私信

//通过选择人或者群组分享私信
var imagePath = plus.io.convertLocalFileSystemURL('_www/static/logo.png');
sdkwx.shareMessage({
    title:"标题",//标题(必需)
    description:"描述",//描述(必需)
    thumbData:imagePath,//图片base64数据(不带头)或图片平台原生路径(uniapp需要plus.io转换),不能超过64k(必需)
    webpageUrl:"https:www.baidu.com"//链接(必需)
}, function(res){
    console.log(res);
    if (res.errorCode == 1) {//成功

    } else if (res.errorCode == -1) {//取消

    } else {//失败
        var errorCode = res.errorCode//错误码,参考https://open.kuaishou.com/platform/openApi?group=GROUP_OPEN_PLATFORM&menu=11
    }               
});

4. 分享私信到某个人

//分享私信到某个人
var imagePath = plus.io.convertLocalFileSystemURL('_www/static/logo.png');
sdkwx.shareMessageToBuddy({
    openId:"",//授权登陆获取对openId(必需)
    targetOpenId:"",//目标用户openId(必需)
    title:"标题",//标题(必需)
    description:"描述",//描述(必需)
    thumbData:imagePath,//图片base64数据(不带头)或图片平台原生路径(uniapp需要plus.io转换),不能超过64k(必需)
    webpageUrl:"https:www.baidu.com"//链接(必需)
}, function(res){
    console.log(res);
    if (res.errorCode == 1) {//成功

    } else if (res.errorCode == -1) {//取消

    } else {//失败
        var errorCode = res.errorCode//错误码,参考https://open.kuaishou.com/platform/openApi?group=GROUP_OPEN_PLATFORM&menu=11
    }               
});

5. 展示个人主页

//展示个人主页
sdkwx.showProfile({
    targetOpenId:""//目标用户openId(必需)
}, function(res){
    console.log(res);
    if (res.errorCode == 1) {//成功

    } else if (res.errorCode == -1) {//取消

    } else {//失败
        var errorCode = res.errorCode//错误码,参考https://open.kuaishou.com/platform/openApi?group=GROUP_OPEN_PLATFORM&menu=11
    }
});

6. 分享图片

//调用该接口,自动保存相册,无需再次保存
var imagePath = plus.io.convertLocalFileSystemURL('_www/static/logo.png');
sdkwx.getImageAssets([imagePath], function(assets){
    console.log(assets);
    sdkwx.shareMedia({
        transaction:"SinglePicturePublish",//android  SinglePicturePublish、SinglePictureEdit、SingleVideoPublish、SingleVideoEdit、SingleVideoClip、MultiMediaClip、AICutMedias
        mediaFeature:2,//ios 0:裁剪功能 1:视频编辑功能,该能力需要申请权限 2:图片编辑功能 3:视频发布功能,该能力需要申请权限 4:智能裁剪功能
        mediaObject:{
            imageAssets:assets//图片列表
        }
    }, function(res){
        console.log(res);
        if (res.errorCode == 1) {//成功

        } else if (res.errorCode == -1) {//取消

        } else {//失败
            var errorCode = res.errorCode//错误码,参考https://open.kuaishou.com/platform/openApi?group=GROUP_OPEN_PLATFORM&menu=11
        }   
    });
}); 

7. 分享视频

//调用该接口,自动保存相册,无需再次保存
var videoPath = plus.io.convertLocalFileSystemURL('_www/static/test.mp4');
sdkwx.getVideoAssets([videoPath], function(assets){
    console.log(assets);
    sdkwx.shareMedia({
        transaction:"SingleVideoPublish",//android  SinglePicturePublish、SinglePictureEdit、SingleVideoPublish、SingleVideoEdit、SingleVideoClip、MultiMediaClip、AICutMedias
        mediaFeature:0,//0:裁剪功能 1:视频编辑功能,该能力需要申请权限 2:图片编辑功能 3:视频发布功能,该能力需要申请权限 4:智能裁剪功能
        mediaObject:{
            videoAssets:assets//视频列表
        }
    }, function(res){
        console.log(res);
        if (res.errorCode == 1) {//成功

        } else if (res.errorCode == -1) {//取消

        } else {//失败
            var errorCode = res.errorCode//错误码,参考https://open.kuaishou.com/platform/openApi?group=GROUP_OPEN_PLATFORM&menu=11
        }   
    });
}); 

8. 在manifest.json配置中,ios设置, UrlScheme设置 KWAI_APP_ID, 通用链接Universal Links设置

/* ios打包配置 */
"ios" : {
    "urltypes" : "ks685673047210945076",
    "entitlements" : {
        "com.apple.developer.associated-domains" : [ 
            "applinks:kuaishou.com/sdksample" 
        ]
    }
}

插件和其他插件库冲突问题,联系qq:16792999

隐私、权限声明

1. 本插件需要申请的系统权限列表:

相册权限

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件自身不采集任何数据,插件使用的快手开发平台 SDK采集数据请参考其官方说明:https://open.kuaishou.com/

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问