HarmonyOS 关于calendarManager(日程管理能力的咨询)
在申请日历的读写权限之后 ,调用下面的代码获取用户的日程。
let calendarMgr = calendarManager.getCalendarManager(getContext());
calendarMgr?.getAllCalendars((err: BusinessError, data: calendarManager.Calendar[]) => {
  if (err) {
    console.error(`Failed to get all calendars, err -> ${JSON.stringify(err)}`);
  } else {
    console.info(`Succeeded to get all calendars, data -> ${JSON.stringify(data)}`);
    data.forEach((calendar) => {
      calendar.getEvents((err: BusinessError, event: calendarManager.Event[]) => {
        if (err) {
          console.error(`Failed to get events, err -> ${JSON.stringify(err)}`);
        } else {
          console.info(`Succeeded to get events, data -> ${JSON.stringify(event)}`);
        }
      });
    })
  }
});
但是,这里只能获取到通过下面:
addEvent(){
  const date = new Date();
  const event: calendarManager.Event = {
    type: calendarManager.EventType.NORMAL,
    title:'火车站接人',
    startTime: date.getTime()+ 60 * 60 * 1000* 48,
    endTime: date.getTime() + 60 * 60 * 1000*49
  };
  let calendarMgr = calendarManager.getCalendarManager(getContext());
  calendarMgr?.getCalendar((err: BusinessError, data:calendarManager.Calendar) => {
    if (err) {
      console.error(`Failed to get calendar, err -> ${JSON.stringify(err)}`);
    } else {
      console.info(`Succeeded to get calendar, data -> ${JSON.stringify(data)}`);
      data.addEvent(event).then((eventId: number) => {
        console.info(`Succeeded to add event, id -> ${eventId}`);
      }).catch((err: BusinessError) => {
        console.error(`Failed to addEvent, err -> ${JSON.stringify(err)}`);
      });
    }
  });
}
addEvent获取的日程,不能获取主动打开系统日历app ,自己手动添加的日程。
问题:
1.是否这个api只能获取通过调用addEvent添加的日程?
- 
用户主动打开系统日历添加的日程是不是获取不到?
 - 
假如如App A通过createCalendar创建了日历,然后 创建了日程APP B是否能够获取到?
 
        HarmonyOS
      
        赞
        
 收藏 0
 回答 1
 
        待解决
        
相关问题
 #鸿蒙学习大百科#如何实现移动数据管理能力? 
1358浏览  • 1回复 待解决
HarmonyOS 状态管理咨询 
1535浏览  • 1回复 待解决
HarmonyOS  关于vp的问题咨询 
1218浏览  • 1回复 待解决
HarmonyOS 关于照片的压缩咨询 
1118浏览  • 1回复 待解决
咨询HarmonyOS应用加壳能力 
1049浏览  • 1回复 待解决
HarmonyOS 请求队列管理咨询 
984浏览  • 1回复 待解决
HarmonyOS 关于CustomDialogController关闭的问题咨询 
1353浏览  • 1回复 待解决
HarmonyOS 关于仓颉的咨询问题 
1103浏览  • 1回复 待解决
HarmonyOS 关于加密算法的咨询 
960浏览  • 1回复 待解决
HarmonyOS 添加日程时,日程重复规则字段recurrenceRule不生效 
859浏览  • 1回复 待解决
HarmonyOS 关于struct index咨询 
776浏览  • 1回复 待解决
HarmonyOS 关于状态管理 
1407浏览  • 1回复 待解决
HarmonyOS 关于内存管理 
1264浏览  • 1回复 待解决
HarmonyOS  关于native aki库的功能咨询 
1103浏览  • 1回复 待解决
HarmonyOS 关于router.back问题的咨询 
1547浏览  • 1回复 待解决
HarmonyOS 关于GIF图片播放功能的咨询 
895浏览  • 1回复 待解决
HarmonyOS 关于页面埋点方案的咨询 
1529浏览  • 1回复 待解决
HarmonyOS 关于ListItem组件曝光的方案咨询 
1092浏览  • 1回复 待解决
日程的id范围是多少? 
1364浏览  • 1回复 待解决
HarmonyOS 关于PhotoPickerComponent相关能力介绍 
1084浏览  • 1回复 待解决
关于数据缓存问题咨询 
1440浏览  • 1回复 待解决
HarmonyOS 关于服务卡片刷新模式的咨询 
2741浏览  • 1回复 待解决
HarmonyOS 关于XComponent组件内容填充的问题咨询 
1073浏览  • 1回复 待解决
HarmonyOS 关于获取录音音频的时长的问题咨询 
1142浏览  • 1回复 待解决





















1、calendarManager不止可以获取addEvent添加的日程,也可以通过calendarManager.getCalendar方法获取的Calendar对象,获取指定的日程。
2、用户通过系统日历添加的日程是可以被获取到的。具体来说,可以使用calendarManager.getCalendar方法来获取默认Calendar对象,或者使用getAccount和getConfig方法获取日历账户信息和配置信息。
3、因为数据安全隐私管控,三方APP只能获取本应用创建的日程,其他应用创建的日程都无法获取。