简介(下载地址)
快手授权登录,发布、编辑、裁剪图片和视频,一键智能裁剪,分享私信,打开用户主页,挂载小程序等。自带选择图片和选择视频方法。
抖音授权登录、发布、分享 Ba-Aweme(文档)
uniapp 常用原生插件大全
开放能力
账号授权 | 社交功能 | 生产功能 |
|
|
|
截图展示
准备工作
开发者需要在快手开放平台完成注册,新建一个网站应用,并获取应用标识appId 和 appSecret,详细参考申请注册流程,官网地址:https://open.kuaishou.com/platform
配置插件
在项目的 manifest.json 文件,App原生插件配置中,勾选插件,并配置appId和scope
使用方法
在 script
中引入组件
const kwai = uni.requireNativePlugin('Ba-Kwai');
在 script
中调用(示例参考,可根据自己业务和调用方法自行修改)
methods: {sendAuth() { //授权登录kwai.sendAuth({state: 'BaKwai', //STATE安全参数,标识和用户或者设备相关的授权请求。建议开发者实现loginType: 1, //默认1,1 通过快手App登录授权 2 通过H5页面登录授权//isGetOpenId: true},(res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));}uni.showToast({title: res.msg,icon: "none",duration: 3000})});},initKwaiOpenAPI() { //初始化使用接口 KwaiOpenAPIkwai.initKwaiOpenAPI({goToMargetAppNotInstall: true, // 应用未安装,是否自动跳转应用市场goToMargetAppVersionNotSupport: true, // 应用已安装但版本不支持,是否自动跳转应用市场setNewTaskFlag: true, // 设置启动功能页面是否使用新的页面栈setClearTaskFlag: true, // 设置启动功能页面是否清除当前页面栈,当isSetNewTaskFlag为true时生效showDefaultLoading: false // 是否显示默认的loading页面作为功能启动的过渡},(res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));} else {uni.showToast({title: res.msg,icon: "none",duration: 3000})}});},addKwaiAPIEventListerer() { // 业务请求回调结果监听kwai.addKwaiAPIEventListerer((res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));} else {uni.showToast({title: res.msg,icon: "none",duration: 3000})}});},shareMessage() { //通过选择人或者群组分享私信let thumbData = plus.io.convertLocalFileSystemURL('_www/static/logo.png');kwai.shareMessage({title: "标题", //标题(必填)description: "描述", //描述(必填)webpageUrl: "https://www.baidu.com", //链接(必填)thumbData: thumbData},(res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));} else {uni.showToast({title: res.msg,icon: "none",duration: 3000})}});},shareMessageToBuddy() { //通过TargetOpenId分享私信给个人,openId是必须参数let thumbData = plus.io.convertLocalFileSystemURL('_www/static/logo.png');kwai.shareMessageToBuddy({openId: this.openId, //授权登录获取的 openId (必填)targetOpenId: this.targetOpenId, //目标用户的 openId (必填)title: "标题", //标题(必填)description: "描述", //描述(必填)webpageUrl: "https://www.baidu.com", //链接(必填)thumbData: thumbData},(res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));} else {uni.showToast({title: res.msg,icon: "none",duration: 3000})}});},showProfile() { //打开TargetOpenId指向的个人主页kwai.showProfile({targetOpenId: this.targetOpenId, //目标用户的 openId (必填)},(res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));} else {uni.showToast({title: res.msg,icon: "none",duration: 3000})}});},publishPicture() { //发布单张图片kwai.publishPicture({filePath: this.mediaPaths[0],//multiMediaAssets: this.mediaPaths,},(res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));} else {uni.showToast({title: res.msg,icon: "none",duration: 3000})}});},editPicture() { //编辑单张图片kwai.editPicture({filePath: this.mediaPaths[0],},(res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));} else {uni.showToast({title: res.msg,icon: "none",duration: 3000})}});},publishSingleVideo() { //发布单个视频kwai.publishSingleVideo({filePath: this.mediaPaths[0],},(res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));} else {uni.showToast({title: res.msg,icon: "none",duration: 3000})}});},editSingleVideo() { //编辑单张图片kwai.editSingleVideo({filePath: this.mediaPaths[0],},(res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));} else {uni.showToast({title: res.msg,icon: "none",duration: 3000})}});},clipSingleVideo() { //裁剪单个视频kwai.clipSingleVideo({filePath: this.mediaPaths[0],},(res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));} else {uni.showToast({title: res.msg,icon: "none",duration: 3000})}});},clipMultiMedia() { //多图和视频裁剪kwai.clipMultiMedia({//filePath: this.mediaPaths[0],multiMediaAssets: this.mediaPaths,},(res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));} else {uni.showToast({title: res.msg,icon: "none",duration: 3000})}});},aiCutMedias() { //发布智能剪辑kwai.aiCutMedias({//filePath: this.mediaPaths[0],multiMediaAssets: this.mediaPaths,},(res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));} else {uni.showToast({title: res.msg,icon: "none",duration: 3000})}});},editMultiPicture() { //多图编辑,支持版本:开放平台不低于3.0.4,快手主站和极速版不低于9.7.20kwai.editMultiPicture({//filePath: this.mediaPaths[0],multiMediaAssets: this.mediaPaths,},(res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));} else {uni.showToast({title: res.msg,icon: "none",duration: 3000})}});},chooseSysImage() { //选择图片(系统)kwai.chooseSysImage((res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));//this.mediaPaths.push(JSON.stringify(res.data));} else {uni.showToast({title: res.msg,icon: "none",duration: 3000})}});},chooseSysVideo() { //选择视频(系统)kwai.chooseSysVideo((res) => {console.log(res)if (res.data) {this.msgList.unshift(JSON.stringify(res.data));//this.mediaPaths.push(JSON.stringify(res.data));} else {uni.showToast({title: res.msg,icon: "none",duration: 3000})}});},chooseImage() { //选择图片(uniapp)let that = this;uni.chooseImage({count: 9,sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有sourceType: ['album'], //从相册选择success: function(res) {console.log(JSON.stringify(res.tempFilePaths));that.mediaPaths = res.tempFilePaths;//that.msgList.unshift(JSON.stringify(that.mediaPaths));// uni.getImageInfo({// src: res.tempFilePaths[0],// success: function(image) {// that.path = image.path;// console.log(image);// }// });}})},chooseVideo() { //选择视频(uniapp)let that = this;uni.chooseVideo({sourceType: ['camera', 'album'],success: function(res) {console.log(JSON.stringify(res.tempFilePath));that.mediaPaths.push(res.tempFilePath);//that.msgList.unshift(JSON.stringify(that.mediaPaths));}})},}
系列插件
图片选择插件 Ba-MediaPicker (文档)
图片编辑插件 Ba-ImageEditor (文档)
文件选择插件 Ba-FilePicker (文档)
应用消息通知插件(多种样式,新增支持常驻通知模式) Ba-Notify(文档)
自定义通知(耳机电量)插件 Ba-NotifyEarphone(文档)
应用未读角标插件 Ba-Shortcut-Badge (文档)
应用开机自启插件 Ba-Autoboot(文档)
扫码原生插件(毫秒级、支持多码)Ba-Scanner-G(文档)
扫码原生插件 - 新(可任意自定义界面版本;支持连续扫码;支持设置扫码格式)Ba-Scanner(文档)
动态修改状态栏、导航栏背景色、字体颜色插件 Ba-AppBar(文档)
原生sqlite本地数据库管理 Ba-Sqlite(文档)
安卓保活插件(采用多种主流技术) Ba-KeepAlive(文档)
安卓保活套装(通用、常驻通知、电池优化、自启管理、后台运行等)(文档)
安卓快捷方式(桌面长按app图标) Ba-Shortcut(文档)
自定义图片水印(任意位置) Ba-Watermark(文档)
最接近微信的图片压缩插件 Ba-ImageCompressor(文档)
视频压缩、视频剪辑插件 Ba-VideoCompressor(文档)
动态切换应用图标、名称(如新年、国庆等) Ba-ChangeIcon(文档)
原生Toast弹窗提示(穿透所有界面、穿透原生;自定义颜色、图标 ) Ba-Toast(文档)
图片涂鸦、画笔 Ba-ImagePaint(文档)
pdf阅读(手势缩放、显示页数) Ba-Pdf(文档)
声音提示、震动提示、语音播报 Ba-Beep(文档)
websocket原生服务(自动重连、心跳检测) Ba-Websocket(文档)
短信监听(验证码) Ba-Sms(文档)
智能安装(自动升级) Ba-SmartUpgrade(文档)
监听系统广播、自定义广播 Ba-Broadcast(文档)
监听通知栏消息(支持白名单、黑名单、过滤) Ba-NotifyListener(文档)
全局置灰、哀悼置灰(可动态、同时支持nvue、vue) Ba-Gray(文档)
获取设备唯一标识(OAID、AAID、IMEI等) Ba-IdCode(文档)
实时定位(系统、后台运行、支持息屏)插件 Ba-Location(文档)
实时定位(高德、后台运行、支持息屏、坐标转换、距离计算) Ba-LocationAMap(文档)
窗口小工具、桌面小部件、微件 Ba-AppWidget(文档)
窗口小工具、桌面小部件、微件(日历、时间) Ba-AwCalendarS(文档)
画中画悬浮窗(视频) Ba-VideoPip(文档)
悬浮窗(在其他应用上层显示) Ba-FloatWindow(文档)
悬浮窗(应用内、无需授权) Ba-FloatWindow2(文档)
悬浮窗(悬浮球、动态菜单、在其他应用上层显示) Ba-FloatBall(文档)
添加到“用其他应用打开”中,用于文件传递、分享等 Ba-ShareReceive(文档)
获取地图数据(高德、地理编码、反地理编码) Ba-AMapData(文档)
来电显示悬浮窗插件(支持锁屏) Ba-CallerID(文档)