reminder

概述

iOS端系统《日历》和《提醒》App

iOS 系统自带的《日历》应用,用户可以在其中添加日程事件,并且支持开发者通过自己的 App 向《日历》中进行事件的读取和写入。《日历》应用默认创建了几个类型的日历,用户也可以根据需要创建自定义的日历。当用户新建日程事件时,需要关联到某个日历。同样开发者向《日历》添加日程事件时,也需要关联到某个日历。

iOS 系统自带的《提醒》应用,主要作用是提供事件列表,用户可以向事件列表中添加提醒事件,同《日历》类似,用户也可以自行创建新的事件列表。同样,App 开发者也可以通过接口对《提醒》应用做同样的操作。

关于日历和提醒的介绍可参考 阿里社区技术文章

插件简述

reminder 封装了对《提醒》App 操作的相关接口。主要包括对提醒事件的增删改查,以及判断本应用是否具有访问《提醒》权限。亦可通过requestAuth 接口向用混请求访问《提醒》权限。

插件接口

remindersAuth

判断是否有访问提醒事项的权限

remindersAuth(callback(ret, err)).

callback(ret, err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status: true,    //布尔型;是否有访问该功能权限;true(有权限)||false (无权限)
    details: ''      //字符串类型;权限详情,取值范围如下:
                     //notDetermined: 用户从未选择过权限
                     //restricted:无法访问手机提醒,该状态用户无法改变
                     //denied:户拒绝该应用访问手机提醒,或是访问手机提醒服务总开关处于关闭状态
                     //authorized:用户允许该程序可以访问手机提醒
}

示例代码

var privacy = api.require('reminder');
privacy.remindersAuth(function(ret, err) {
    if (ret.status) {
        api.alert({msg: JSON.stringify(ret)});
    } else {
        api.alert({msg: JSON.stringify(err)});
    }
});

可用性

iOS 系统

可提供的 1.0.0 及更高版本

requestAuth

请求访问提醒权限

requestAuth(callback(ret))

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    granted:       //布尔型;是否请求成功;true(有权限)||false (无权限) 
}

示例代码

var reminder = api.require('reminder');
reminder.requestAuth(function(ret) {
    api.alert({msg:JSON.stringify(ret)})
});

可用性

iOS 系统

可提供的 1.0.0 及更高版本

addReminder

添加提醒

addReminder({params}, callback(ret))

params

title:

  • 类型:字符串
  • 描述:提醒的标题

notes:

  • 类型:字符串
  • 描述:提醒的描述

location:

  • 类型:字符串
  • 描述:(可选项)地点
  • 默认:无

calendarIdentifier:

  • 类型:字符串
  • 描述:(可选项)提醒所在分类
  • 默认:默认分类

startTime:

  • 类型:字符串
  • 描述:(可选项)开始时间
  • 格式:2022-08-01 00:00:00

completionDate:

  • 类型:字符串
  • 描述:(可选项)结束时间
  • 格式:2035-08-01 00:00:00

callback(ret)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status:              //布尔类型;是否添加成功
    reminderId:          //字符串类型;提醒事件的ID,status 为true时有值
    errorMsg:            //字符串类型;错误信息,status 为false时有值
}

示例代码

var reminder = api.require('reminder');
reminder.addReminder({
    title: '标题',
    notes: '描述',
    startTime: '2017-08-01 13:00:00',
    endTime: '2022-10-01 14:00:00'
}, function(ret) {
     api.alert({msg:JSON.stringify(ret)})
});

可用性

iOS系统

可提供的 1.0.0 及更高版本

getAllReminders

获取所有的提醒

params

completed:

  • 类型:布尔
  • 描述:(可选项)是否是检索已经完成的提醒
  • 默认:false (未完成的提醒)

callback(ret)

  • 类型:JSON 对象
  • 内部字段:
{
    status:              //布尔类型;是否获取成功
    reminders:[          //数组类型;
        {	 
            title:'',
            notes:'',
            startTime:'',
            completionDate:'',
            location:'',
            calendarIdentifier:'',
           reminderId:           		
        }
    ]
}

示例代码

    var reminder = api.require('reminder');
    reminder.getAllReminders({ 
        completed: false
    },function(ret) {
       api.alert({msg:JSON.stringify(ret)});
    });

可用性

iOS系统

可提供的 1.0.0 及更高版本

getRemindersById

通过分类的 ID 获取提醒

params

calendarIdentifier:

  • 类型:字符串
  • 描述:(可选项)提醒所在分类
  • 默认:默认分类

callback(ret)

  • 类型:JSON 对象
  • 内部字段:
{
    status:              //布尔类型;是否获取成功
    reminders:[          //数组类型;
        {	 
            title:'',
            notes:'',
            startTime:'',
            completionDate:'',
            location:'',
            calendarIdentifier:'',
           reminderId:    
        }
    ]
}

示例代码

    var reminder = api.require('reminder');
    reminder.getRemindersById({
        calendarIdentifier: ''
    }, function(ret) {
       api.alert({msg:JSON.stringify(ret)});
    });

可用性

iOS系统

可提供的 1.0.0 及更高版本

removeReminder

删除提醒

removeReminder(callback(ret))

params

reminderId:

  • 类型:字符串
  • 描述:提醒的 ID

calendarIdentifier:

  • 类型:字符串
  • 描述:(可选项)提醒所在分类
  • 默认:默认分类

callback(ret,err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status: true             // 布尔类型;是否删除成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    code:               //数字类型;错误码
    msg:                //字符串类型;错误信息
}

示例代码

var reminder = api.require('reminder');
reminder.removeReminder({
    title: '测试'
}, function(ret,err) {
    if (ret.status) {
       api.alert({msg:JSON.stringify(ret)})
    } else {
       api.alert({msg:JSON.stringify(err)})
    }
});

可用性

iOS系统

可提供的 1.0.0 及更高版本

updateReminder

更新提醒

updateReminder(callback(ret))

params

reminderId:

  • 类型:字符串
  • 描述:提醒的 ID

calendarIdentifier:

  • 类型:字符串
  • 描述:(可选项)提醒所在分类
  • 默认:默认分类

title:

  • 类型:字符串
  • 描述:(可选项)要移除的提醒的标题

notes:

  • 类型:字符串
  • 描述:(可选项)要移除的提醒的描述

location:

  • 类型:字符串
  • 描述:(可选项)要移除的提醒的地点

startTime:

  • 类型:字符串
  • 描述:提醒的开始时间
  • 默认:原值
  • 格式:2022-08-01 00:00:00

completionDate:

  • 类型:字符串
  • 描述:完成时间
  • 默认:原值
  • 格式:2022-08-01 00:00:00

callback(ret,err)

ret:

  • 类型:JSON 对象
  • 内部字段:
{
    status: true             // 布尔类型;是否删除成功
}

err:

  • 类型:JSON 对象
  • 内部字段:
{
    code:               //数字类型;错误码
    msg:                //字符串类型;错误信息
}

示例代码

var reminder = api.require('reminder');
reminder.updateReminder({
    reminderId: '***',
    calendarIdentifier:'',
    title:'修改测试'
}, function(ret,err) {
    if (ret.status) {
       api.alert({msg:JSON.stringify(ret)})
    } else {
       api.alert({msg:JSON.stringify(err)})
    }
});

可用性

iOS系统

可提供的 1.0.0 及更高版本

是否仍需要帮助? 请保持联络!
最后更新于 2024/12/2