为帮助用户更好更快的使用原生插件,论坛维护了一个示例,示例中包含示例代码、知识点讲解、注意事项等,供您参考。
钉钉简介
钉钉(DingTalk)是阿里巴巴集团专为中国企业打造的免费沟通和协同的多端平台,帮助企业通过系统化的解决方案(微应用),全方位提升企业沟通和协同效率。
dingding 原生插件概述
本原生插件封装了钉钉的分享功能
android签名 下载签名工具并安装,打开然后输入应用的包名,即可生成该应用的签名
原生插件使用攻略
使用之前须从钉钉开放平台申请开发者账号并创建应用,获取 appid
钉钉平台接入流程参考钉钉平台接入文档
config.xml
文件:针对 ios 平台配置方法:
<feature name="dingding">
<param name="appID" value="bf1acab2de4925b9cd624819" />
<param name="urlScheme" value="bf1acab2de4925b9cd624819" />
<param name="urlScheme" value="dingoak5hqhuvmpfhpnjvt" />
</feature>
注意:
1, iOS 平台上必须添加白名单,如下:
<preference name="querySchemes" value="dingtalk,dingtalk-open,dingtalk-sso" />
详情参考 Yonbuilder 移动开发平台官方文档之-----白名单配置
判断当前设备是否安装钉钉客户端
isInstalled(callback(ret))
ret:
{
installed: true //布尔型;true||false,当前设备是否安装钉钉客户端
}
var dingding = api.require('dingding');
dingding.isInstalled(function(ret) {
if (ret.installed) {
alert("当前设备已安装钉钉客户端");
} else {
alert('当前设备未安装钉钉客户端');
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
判断是否支持分享
isSupportShare(callback(ret))
ret:
{
isSupport: true //布尔型;true||false,是否支持分享
}
var dingding = api.require('dingding');
dingding.isSupportShare(function(ret) {
if (ret.isSupport) {
alert("支持钉钉分享");
} else {
alert('不支持钉钉分享');
}
});
Android系统
可提供的1.0.0及更高版本
分享文本内容
shareText({params}, callback(ret, err))
appId:
text:
ret:
{
status: true //布尔型;true||false
}
err:
{
code: 0 //数字类型;
//错误码:
//-1(未知错误)
//0(成功)
//-2(用户取消)
//-3(发送失败)
}
var dingding = api.require('dingding');
dingding.shareText({
appId: '',
text: '我分享的文本'
}, function(ret, err) {
if (ret.status) {
alert('分享成功');
} else {
alert(err.code);
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
分享图片内容
shareImage({params}, callback(ret, err))
appId:
contentUrl:
ret:
{
status: true //布尔型;true||false
}
err:
{
code: 0 //数字类型;
//错误码:
//-1(未知错误)
//0(成功)
//-2(用户取消)
//-3(发送失败)
}
var dingding = api.require('dingding');
dingding.shareImage({
appId: '',
contentUrl: 'fs://b.jpg'
}, function(ret, err) {
if (ret.status) {
alert('分享成功');
} else {
alert(err.code);
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
分享网页
shareWebpage({params}, callback(ret, err))
appId:
title:
description:
thumurl:
url:
ret:
{
status: true //布尔型;true||false
}
err:
{
code: 0 //数字类型;
//错误码:
//-1(未知错误)
//0(成功)
//-2(用户取消)
//-3(发送失败)
}
var dingding = api.require('dingding');
dingding.shareWebpage({
appId: '',
title: '测试标题',
description: '分享内容的描述',
thumurl: 'fs://a.jpg',
url: 'http://builder.com'
}, function(ret, err) {
if (ret.status) {
alert('分享成功');
} else {
alert(err.code);
}
});
iOS系统,Android系统
可提供的1.0.0及更高版本
是否支持三方登陆
isSupportAuth({params}, callback(ret, err))
ret:
{
status: true //布尔型;true||false 是否支持
}
err:
{
msg:'', //字符串类型;错误信息
}
var dingding = api.require('dingding');
dingding.isSupportAuth({
}, function(ret, err) {
api.alert({
msg: JSON.stringify(ret)
})
});
iOS系统,Android系统
可提供的1.0.0及更高版本
三方登陆
auth({params}, callback(ret, err))
appId:
state:
ret:
{
status: true //布尔型;true||false 是否授权成功
code:'', //字符串类型;授权码
state:'', //字符串类型;第三方程序发送时用来标识其请求的唯一性的标志,调用接口时传入,由钉钉终端回传,state字符串长度不能超过1K;此参数iOS端不返回
}
err:
{
errCode:, //数字类型;错误码; -4/用户拒绝授权、-2/用户取消授权
}
var dingding = api.require('dingding');
dingding.auth({
appId:'',
state:'',
}, function(ret, err) {
api.alert({
msg: JSON.stringify(ret)
})
});
iOS系统,Android系统
可提供的1.0.0及更高版本