Android 实施股票价格预警系统的正确方法
以前,在桌面环境下,为了实现一个股票价格预警系统,下面是我要做的Android 实施股票价格预警系统的正确方法,android,Android,以前,在桌面环境下,为了实现一个股票价格预警系统,下面是我要做的 生成一个无限运行的线程 该线程将从股票服务器执行股票价格查询 线程将根据检索到的股票价格执行所有必要的警报操作 线程休眠N个周期。(N可以是30分钟) 回到2 在移动环境中,能效使用是一个主要考虑因素。股票警报机制应该保持运行,即使我使用后退按钮“关闭”应用程序 我有两条出路 使用服务 生成一个无限运行的服务 该服务将从股票服务器执行股票价格查询 该服务将根据检索到的股票价格执行所有必要的警报操作 服务休眠N个周期。(N可以是30
线程
服务
AlarmManager
中安装BroadcastReceiver
onReceive
将在下一个N时段触发onReceive
返回之前,在AlarmManager
中为下一个N时段安装另一个BroadcastReceiver
我在想,哪种方式更好?除了这两种方法之外,还有其他更好的方法吗?我觉得
AlarmManager
更好,因为我们不需要长时间睡眠,这似乎是在浪费资源?使用AlarmManager
触发BroadcastReceiver
,然后让BroadcastReceiver
启动IntentService
BroadcastReceiver
不应执行任何长时间运行的任务,但它可以启动服务来执行工作。IntentService
(扩展了服务
)将在工作线程上执行工作,然后自动终止
看
及
换句话说,您可以结合您正在考虑的两种方式,但无需持续运行服务
,因此,在IntentService自行终止之前,是否需要将BroadcastReceiver重新安装到AlarmManager中?因此,下一个警报活动将在N时段后触发?这取决于您如何创建警报。AlarmManager
类具有设置(…)
单个报警的方法,或者您可以使用setRepeating(…)
创建重复报警,该报警将以相同的间隔触发,直到取消。