美文网首页
Andriod 应用进行定时提醒任务设计

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

作者: 认真的老去 | 来源:发表于2019-08-13 23:34 被阅读0次

前言

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这个通病。

示例:网易严选

设置提醒.png 短信提醒.png

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

相关文章

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

    前言 APP内设置提醒是大多数抢购、秒杀都会涉及到的一个功能应用,ios 应用可以获取系统权限进行本地推送,相对简...

  • day 17

    第13章 Linux系统定时任务Cron(d)服务应用实践 1.1、Linux定时任务 1.1.1、什么是定时任务...

  • Java接口处理以及异常处理

    接口在Andriod中的应用 回调函数:事件监听 Asdl...... 框架设计 框架设计的时候 接口处理 -声明...

  • day 22 操作系统定时任务

    系统定时任务概念==生活中闹钟 系统定时任务实现方法: 实现定时任务配置: 定时任务如何进行设置 定时任务编写常见...

  • 2019-07-30

    day22 操作系统定时任务 课程介绍 1.定时任务概念介绍2.定时任务实现方式3.定时任务配置应用过程4.定时...

  • springboot 任务

    邮件任务 添加依赖 进行邮件配置 测试 定时任务: ==@EnableScheduling== 开启定时任务注解...

  • 一文教你实现Java、Spring动态启停定时任务

    为什么需要定时任务 定时任务的应用场景十分广泛,如定时清理文件、定时生成报表、定时数据同步备份等。 Java定时任...

  • 学习Linux2

    linux 学习2 定时任务管理 crond 任务调度 crontab 进行 定时任务的设置 概述任务调度:是指系...

  • 扩展Spring Boot Web应用 - 增加动态定时任务

    前面添加过简单的定时任务,但这个任务启动后就会一直运行直到应用结束,如果打算不重启应用就调整任务的定时执行时间,或...

  • 定时器的设计与实现

    参照Ceph的定时器的设计。设计原理: 定时器线程,处理定时任务 利用context_map = std::mul...

网友评论

      本文标题:Andriod 应用进行定时提醒任务设计

      本文链接:https://www.haomeiwen.com/subject/draijctx.html