更新记录

1.0.0(2025-09-20)

读取安卓所有的日历账户


平台兼容性

uni-app(4.76)

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

uni-app x(4.76)

Chrome Safari Android iOS 鸿蒙 微信小程序
- - - - - -

其他

多语言 暗黑模式 宽屏模式

uni-calendar

一个基于 UTS 开发的 uni-app 日历插件,支持在 Android 平台获取系统日历信息。

功能特性

  • 📅 获取系统日历账户信息
  • 🔐 支持访问级别查询
  • 🎨 支持日历颜色和显示名称
  • ⚙️ 支持同步和可见性设置
  • 📱 专为 Android 平台优化

安装

  1. 在 uni-app 项目中,通过 uni_modules 安装
  2. 确保 HBuilderX 版本 >= 4.7.0

使用方法

获取日历信息

uni.getCalendarInfo({
  success: (res) => {
    console.log("获取日历信息成功:", res);
    // res.Calendars 包含所有日历账户信息
    res.Calendars.forEach((calendar) => {
      console.log("日历ID:", calendar.calendarId);
      console.log("账户名:", calendar.accountName);
      console.log("显示名称:", calendar.displayName);
      console.log("是否可见:", calendar.visible);
      console.log("访问级别:", calendar.accessLevel);
    });
  },
  fail: (err) => {
    console.error("获取日历信息失败:", err);
  },
  complete: (res) => {
    console.log("操作完成:", res);
  },
});

返回数据结构

interface Calendar {
  calendarId: number; // 日历ID
  accountName: string; // 账户名称
  accountType: string; // 账户类型
  ownerAccount: string | null; // 所有者账户
  name: string | null; // 日历名称
  displayName: string | null; // 显示名称
  visible: boolean; // 是否可见
  syncEvents: boolean; // 是否同步事件
  isPrimary: boolean | null; // 是否为主日历
  accessLevel: number | null; // 访问级别
  timeZone: string | null; // 时区
  color: number | null; // 颜色
  deleted: boolean | null; // 是否已删除
  allowedReminders: string | null; // 允许的提醒方式
  allowedAvailability: string | null; // 允许的可用性
  allowedAttendeeTypes: string | null; // 允许的参与者类型
}

权限说明

本插件需要以下 Android 权限:

  • READ_CALENDAR - 读取日历数据

平台支持

  • ✅ Android (API 21+)
  • ❌ iOS (暂不支持)
  • ❌ H5 (暂不支持)
  • ❌ 小程序 (暂不支持)

注意事项

  1. 仅支持 Android 平台
  2. 需要用户授权日历读取权限
  3. 建议在用户交互后调用,避免权限弹窗被拦截

更新日志

v1.0.0

  • 初始版本发布
  • 支持获取 Android 系统日历信息
  • 完整的类型定义和错误处理

许可证

MIT License

隐私、权限声明

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

需要 READ_CALENDAR 权限用于读取系统日历数据

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

插件不采集任何数据,仅读取本地日历信息

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

暂无用户评论。