医疗生物科技 网站建设,wordpress新闻类模板下载,教育海报设计素材网站,在阿里云建设一个网站的全流程简介
Calendar Kit提供日历与日程管理能力#xff0c;包括日历的获取和日程的创建能力。 Calendar Kit为用户提供了一系列接口来获取日历账户#xff0c;并使用特定的接口向日历账户中写入日程。
如果写入的日程带有提醒时间则系统会在时间到达时向用户发送提醒。
约束点…简介
Calendar Kit提供日历与日程管理能力包括日历的获取和日程的创建能力。 Calendar Kit为用户提供了一系列接口来获取日历账户并使用特定的接口向日历账户中写入日程。
如果写入的日程带有提醒时间则系统会在时间到达时向用户发送提醒。
约束点 需要用户手动授权获取读取、写入日历日程的权限。 仅支持stage模型。 从api11开始支持
相关知识
配置需要的权限
在module.json5中配置所需申请的权限
requestPermissions: [{name: ohos.permission.READ_CALENDAR,},{name: ohos.permission.WRITE_CALENDAR}
]在EntryAbility中配置权限和日历管理器
EntryAbility中检查用户是否确认权限
import {abilityAccessCtrl,AbilityConstant,common,PermissionRequestResult,Permissions,UIAbility,Want
} from kit.AbilityKit;
import { hilog } from kit.PerformanceAnalysisKit;
import { window } from kit.ArkUI;
import { calendarManager } from kit.CalendarKit;
import { BusinessError } from kit.BasicServicesKit;/*** 日志管理器全局对象*/
export let calendarMgr: calendarManager.CalendarManager | null null;export let mContext: common.UIAbilityContext | null null;export default class EntryAbility extends UIAbility {onWindowStageCreate(windowStage: window.WindowStage): void {// Main window is created, set main page for this abilityhilog.info(0x0000, testTag, %{public}s, Ability onWindowStageCreate);windowStage.loadContent(pages/Index, (err) {if (err.code) {hilog.error(0x0000, testTag, Failed to load the content. Cause: %{public}s, JSON.stringify(err) ?? );return;}hilog.info(0x0000, testTag, Succeeded in loading the content.);});//检测用户是否授权日历权限mContext this.context;const permissions: Permissions[] [ohos.permission.READ_CALENDAR, ohos.permission.WRITE_CALENDAR];let atManager abilityAccessCtrl.createAtManager();atManager.requestPermissionsFromUser(mContext, permissions).then((result: PermissionRequestResult) {//给日历管理器赋值calendarMgr calendarManager.getCalendarManager(mContext);}).catch((error: BusinessError) {console.error(get Permission error, error: ${JSON.stringify(error)});})}
}日历管理器CalendarManager
提供了添加、删除、获取日历账户的相关方法。如果不需要关注日程Event的账户Calendar归属时可以直接使用getCalendar方法直接获取。
相关方法如下 createCalendar(calendarAccount: CalendarAccount, callback: AsyncCallback): void createCalendar(calendarAccount: CalendarAccount): Promise deleteCalendar(calendar: Calendar, callback: AsyncCallback): void deleteCalendar(calendar: Calendar): Promise getCalendar(callback: AsyncCallback): void getCalendar(calendarAccount: CalendarAccount, callback: AsyncCallback): void getCalendar(calendarAccount?: CalendarAccount): Promise getAllCalendars(callback: AsyncCallbackCalendar[]): void getAllCalendars(): PromiseCalendar[]
日历账户Calendar
可以对账户中的日程进行创建、删除、修改、查询等操作还有日历配置信息、日历账户信息等方法
日程Event