Andriod 应用进行定时提醒任务设计

前言

APP内设置提醒是大多数抢购、秒杀都会涉及到的一个功能应用,ios 应用可以获取系统权限进行本地推送,相对简单,但是安卓由于其系统特殊性以及多样性,难以统一直接获取系统权限进行推送提醒。本文就设置提醒进行推送的可能可以采用的几种形式进行整理说用,以方便大家进行功能设计;

方法一: 本地app设置定时提醒推送

依赖APP本身的定时服务进行提醒,但是前提是你要做的APP可以做到长时间的高保活,否则APP被程序或者用户主动杀掉,手机就无法收到定时提醒了。

当然目前的安卓app要实现长时间的保活,是很难做到的,所以这种方案基本作废。

方法二: 采用servers设置定时提醒推送,包括app推送或者其他形式通知,如手机、微信;

即定时任务本身不依赖与app客户端,而是在service设置定时任务,符合条件后由service进行定时服务推送。

该方案有两个前提,其一,当然是app必须连接互联网,其二是APP必须手机厂商提供的第三方推送服务,以确保自身app不保活的前提下也可以成功收到定时任务推送。如不能接入第三方推送,依赖与自己的服务器推送,则与方案一基本无异。

此方案相对其他方案都是比较建议的方案,由第三方进行推送的情况下,app收到推送后的可操作空间就很大了,如直接启动app进入 指定的页面等等

缺陷是,也有一定推送的概率失败,且安卓手机厂商较多,推送形式不一,需要一 一 进行对接,工作量也会大很多。但就目前来说,安卓app如果要做到高成功率推送,必然要做这一步。

市面上,采用此方案的有京东、淘宝、

方法三:本地设置闹钟进行定时提醒

即通过调用系统闹钟,在设置定时提醒时相当于设置了一个闹钟,在对应时间点以闹钟的形式进行提醒。

这个方案的优点是,闹钟提醒十分强势,与app是否保活无关,相比推送也强势很多,当然也有可能造成用户反感,体验很差。

缺点就比较明显:

其一,在设置和取消的过程中,必须启动并离开自身应用,进入系统闹钟进行设置,虽然可以自动填充时间主题等内容,但是导致用户离开app本身体验并不良好;(开发大佬跟我讲的,如有错误,还请指正)。

其二,每次提醒均会设置一个闹钟,会影响用户系统闹钟列表,体验不良;

其三,用户无法通过提醒直接启动app,更不用讲进入对应页面。

综合,不建议此种方案;

方法四:设置本地日历进行定时提醒

与方法三类似,调用系统日历,在系统日历中写入日程提醒,在对应时间点通过系统日历的推送进行提醒;

优点是 ,与app是否保活无关,相比方案三用户体验也会好很多,日历本身即具有日程提醒的属性,

且在设置和取消过程中,无需离开应用本身即可实现。

缺陷是,用户通过提醒仅能进入系统日历,无法启动app。

在未实现service推送的情况的,此种方案是建议方案之一

采用此中方案的应用,如拼多多。

方法五:利用玩家绑定手机进行推送

此种方案相比于其他四种应该来说比较古老,即在设置定时提醒后,通过用户在APP登录绑定的手机号以短信的方式进行推送,当然限制了必须是登陆状态且有手机号。

优点时推送成功率会应该相对会高很多,但是处于现在用户对于短信的免疫状态,该方法的推送效果感觉不容乐观,当然仅依据我的直观感受,没有数据支持,结果可能与我感受恰恰相反。

还有一个缺陷就是无法直接启动app这个通病。

示例:网易严选

Andriod 应用进行定时提醒任务设计_第1张图片
设置提醒.png
短信提醒.png

以上方案各有利弊吧,在没有实现推送的情况下,我采用了日历提醒折衷的实现方案。

你可能感兴趣的:(Andriod 应用进行定时提醒任务设计)