如何发布日历提醒推送消息服务器,iOS开发 -- 通过app向手机自带的日历中添加事件提醒...
在如今实际开发中,我们会有一种需求---通过自己的app往系统自带的日历中添加提醒事件.
一: 首先上最后效果图:
WechatIMG7.jpeg
下图是关于添加事件的详情
WechatIMG8.jpeg
这里可以设置提前多长时间提醒该事件,在日历事件详情中这里可以看到
Paste_Image.png
最后事件到提前时间内,会在手机的通知栏推送消息通知,见下图
WechatIMG9.jpeg
二: 下面具体开始具体怎么实现的吧!
首先上代码下载地址:https://github.com/Andrewliu20/Demo.git 下载可以先体验一下.
功能的事件主要在EventCalendar类实现,下图是类的详情:
EventCalendar.h
Paste_Image.png
/**
将App事件添加到系统日历提醒事项,实现闹铃提醒的功能
@param title 事件标题 ---这里是标题
@param location 事件位置 -- 这里可以添加位置,也可以其他想显示的内容(系统日历中是地址)
@param startDate 开始时间 -- 事件的开始日期和系统日历设置事件开始事件对应
@param endDate 结束时间 -- 事件的结束日期和系统日历设置事件开始事件对应
@param allDay 是否全天 -- 和系统设置全天一致
@param alarmArray 闹钟集合 -- 提前提醒的时间集合(这里可以设置多个提醒事件点,时间点单位为秒,如果提前提醒需要设置为负,比如-3600 就是提前一个小时提醒)
*/
下图是EventCalendar.m的具体实现
Paste_Image.png
ps:在ios10以后,对于使用系统自带的隐私数据,比如相机,日历等,需要添加权限通知,这里只用到日历,只需要在xcode中的info.plist中添加上下面这句话,不然统会crash.
NSCalendarsUsageDescription
App需要您的同意,才能访问日历
三: 实际使用,在你的项目中把EventCalendar导入要实现的地方即可.下图是demo中实现的实现.
Paste_Image.png
ps:
这里是事件开始时间是[NSDate dateWithTimeInterval:3600 sinceDate:[NSDate date]] 3600 代表当前时间的的一个小时为开始事件,结束事件类似.
alarmArray 闹钟集合 我这里就添加一个,-3600 代表提前一个小时提示.
喜欢请留爪! thx!!
如何发布日历提醒推送消息服务器,iOS开发 -- 通过app向手机自带的日历中添加事件提醒...相关推荐
- APP是怎么推送消息的--以淘宝app为例
文章转自本人公众号:机械猿,本人之前在四川某汽轮机从事结构强度设计,目前在阿里巴巴淘宝事业部担任高级开发工程师,有机械工程同行想转行IT,或者有想入职BAT的可以找我内推~ 絮叨 之前讨论过TCP连接 ...
- UniPush推送消息配置IOS证书
哈喽哈喽,这次是要配置IOS证书的整体流程. 当我们配置完.我们就可以通过Unipush 给我们的应用推送啦. 首先我们先知道在哪里配置Dcloud后台中,UniPush栏下.应用配置 就可以配置IO ...
- 公众号向特定用户主动推送消息_SAP系统和微信集成的系列教程之三:微信用户关注公众号之后,自动在SAP C4C系统创建客户主数据...
这是Jerry 2020年的第84篇文章,也是汪子熙公众号总共第266篇原创文章. 本系列的英文版Jerry写作于2017年,这个教程总共包含十篇文章,发表在SAP社区上: https://blogs ...
- Android 推送消息开放接口 OpenPush
Android 推送消息开放接口 OpenPush 我们知道, 在中国不能使用 google 的服务. 在中国销售的手机甚至没有安装 google 的服务.所以, 原本由 google gcm 提供的 ...
- 基于SENPARC盛派微信sdk的.net WebService微信公众号的相关开发(包含从零开始本机测试环境搭建//token验证//获取微信推送消息//向微信推送消息)
前言: 由于微信公众号正式号,一直在被使用,所以在研发的时候,本机测试环境,就显得非常重要. 而且在自己闲暇之余,可以自己尝试更深程度的微信公众号的研发工作. 1.首先,必要的网站 http://sd ...
- 服务器主动推送消息数据给客户端
1 引言 这个问题第一次是我在实现一个导师的方案的时候所发现的,一开始我需要实现服务器与客户端的密钥协商和数据传递,服务器需要主动分发(推送)密钥给客户端,因为以前没有做过相关编码,后来只能想到用反向 ...
- SpringBoot整合MQTT服务器实现消息的发送与订阅(推送消息与接收推送)
场景 Windows上Mqtt服务器搭建与使用客户端工具MqttBox进行测试: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...
- 服务器如何向前端页面推送消息,后端向前端推送消息
SpringBoot+WebSocket集成 什么是WebSocket? 为什么需要 WebSocket? 前言 maven依赖 WebSocketConfig WebSocketServer 消息推 ...
- 服务器推送小程序,小程序之主动推送消息(订阅消息)
微信的东西,第一次玩,记录下全过程,略过申请小程序步骤 1:配置类目,建议在申请小程序的时候多选几个类目,类目越多,可选的消息模版越多,修改地址(传送门 路径: 设置-基本设置-服务类目) 2:设置推 ...
最新文章
- LoadRunner做性能测试 从设计到分析执行
- 多目录cmake工程 CmakeLists.txt编写
- 数据可用不可见,百度新版本联邦学习PaddleFL来了
- 入门设计模式之建造者模式
- linux系统的运行定义在,Linux系统运行级管理
- java中,剩下的这两个内部类不太好理解!
- mysql小计_使用SQL实现小计,合计以及排序_MySQL
- 京东金融品牌升级,为用户做精准决策,打造金融机构的“第二增长场景”
- 第 25 章 策略模式
- 黑客可利用 TeamViewer 缺陷远程窃取系统密码
- 计算机考试怎么切换到桌面,考试系统很多考试系统全屏无法切换桌面,只能 – 手机爱问...
- 三菱5uplc伺服电机指令_2020山东三菱PLCFX1S30MT回收回收价格公道
- MySQL入门之课后思考题第六章
- java微信分享朋友圈_Java实现微信公众平台朋友圈分享功能详细代码
- 每日一佳——SVM Optimization: Inverse Dependence on Training Set Size(Shai Shalev-Shwartz et al,ICML,2008)
- es根据字段长度过滤_es根据字段长度过滤_如何进行elasticsearch查询以过滤字段的最大值?...
- SQL服务器上SQLserverAgent无法启动的解决方法 SQL2000无法安装的解决办法
- SQL多表联合查询时采用字段模糊匹配
- 如何使用iTunes 10制作iPhone手机铃声?
- linux系统英伟达gpu驱动卸载_Ubuntu 16.04 卸载Nvidia显卡驱动和cuda