更新记录

1.0.0(2026-03-22)

首次发布


平台兼容性

uni-app(3.7.1)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
× × - - 5.1 12 5.0.3(15)
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
× × × × × × × × × × × ×

Android,IOS ,HarmonyNext 三端钉钉授权登录和分享

钉钉开发者平台网站:https://open.dingtalk.com

一、三个端插件配置使用说明

  • Android 无需配置。
  • IOS 需要在插件 uni_modules/html5app-doingtalkuts/ios/lnfo.plist 文件中配置钉钉应用的Client ID。
  • HarmonyNext 需要在项目根目当下配置 harmony-configs/build-profile.json5 和 harmony-configs/entry/src/main/module.json5 两个文件。

鸿蒙项目 build-profile.json5 内容,配置API 版本为大于等于15 版本

{
  "app": {
       "products": [
          {
            "name": "default",
            "signingConfig": "default",
            "targetSdkVersion": "5.0.3(15)",
            "compatibleSdkVersion": "5.0.3(15)",
            "runtimeOS": "HarmonyOS",
            "buildOption": {
              "strictMode": {
                "caseSensitiveCheck": true,
                "useNormalizedOHMUrl": true
              }
            }
          }
        ]  
  }
}

鸿蒙项目 module.json5 内容 配置 querySchemes 项目,钉钉的名称是:dingtalk

{
  "module": {
    "name": "entry",
    "type": "entry",
    "description": "$string:module_desc",
    "mainElement": "EntryAbility",
    "deviceTypes": [
      "phone"
    ],
    "deliveryWithInstall": true,
    "installationFree": false,
    "pages": "$profile:main_pages",
    "abilities": [
      {
        "name": "EntryAbility",
        "srcEntry": "./ets/entryability/EntryAbility.ets",
        "description": "$string:EntryAbility_desc",
        "icon": "$media:layered_image",
        "label": "$string:EntryAbility_label",
        "startWindowIcon": "$media:startIcon",
        "startWindowBackground": "$color:start_window_background",
        "exported": true,
        "skills": [
          {
            "entities": [
              "entity.system.home"
            ],
            "actions": [
              "ohos.want.action.home"
            ]
          }
        ]
      }
    ],
    "requestPermissions": [
      {
        "name" : "ohos.permission.INTERNET"
      }
    ],
    "querySchemes": [
      "dingtalk"
    ]
  }
}

二、插件使用说明

  • 先在钉钉开发者网站创建移动应用

  • 在需要使用插件的页面引用插件,再进行云打包插件生效。
    import * as doingtalk from '@/uni_modules/html5app-doingtalk'; //引入插件

1. 钉钉授权登录

  • 如果钉钉应用不存在,则打开H5 网页进行授权登录

     doingtalk.login({
      "clientId":"dingnpijhaurwtood1tp",  //钉钉后台的应用clientId
      "redirectUri":"https://www.html5-app.com/auth", //钉钉后台的回调网址
      "scope":"openid", //openid 和 openid%20corpid  两种方式,一个是个人登录,一种是企业组织登录
      "state":"168"  //自定义值,随便填,和会返回时一样
      },res=>{
            console.log("授权回调",res);
            if(res.code==0)
            {
                //授权成功
            }else{
                //授权失败
            }

    });  
  • 授权成功回调
{
    "code": 0,
    "msg": "授权成功",
    "state": "168",
    "authCode": "36f82e3ab0b132079b21085c9d2c742d"
    }

2. 钉钉分享文本


    doingtalk.share({
     "clientId":"dingnpijhaurwtood1tp",
     "content":"这我第一次分享"
    },res=>{

      console.log("分享回调",res);
    });

3. 钉钉分享图片

  • imagePath 图片路径,仅支持图片的本地绝对路径。
    doingtalk.share({
    "clientId":"dingnpijhaurwtood1tp",
    "imagePath":"/var/mobile/Containers/Data/Application/CF51B281-8405-4E63-A631-DA918808A0B4/Library/Caches/uni-download/hello-uniappx-qrcode.png"
},res=>{

      console.log("分享回调",res);
});

4. 钉钉分享网址卡片

    doingtalk.share({
    "clientId":"dingnpijhaurwtood1tp",
    "title":"这是我想分享的",
    "content":"插件市场",
    "url":"https://ext.dcloud.net.cn/?page=6",
    "thumbUrl":"https://img-cdn-tc.dcloud.net.cn/uploads/avatar/000/82/36/40_avatar_max.jpg?=1683768837"
},res=>{
      console.log("分享回调",res);
});

5. 获取是否已安装钉钉应用


let is=doingtalk.isDDAppInstalled();
console.log("是否安装钉钉",is);

钉钉授权成功后,返回 authCode 获取用户通讯录个人信息

三、安卓demo APK测试应用安装体验

隐私、权限声明

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

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

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

暂无用户评论。