网站建设设计规划书,游戏搜索风云榜,建筑设计公司名称,陕西网站备案 多久Android四大组件-活动、服务、广播、碎片情况一应用场景#xff1a;定时从服务器获取数据#xff0c;然后活动或者碎片中根据最新获得的数据#xff0c;更新UI。思考#xff1a; 首先定时#xff0c;想到定时器#xff0c;推荐使用系统自带的AlertManager#xff0c;而它…Android四大组件-活动、服务、广播、碎片情况一应用场景定时从服务器获取数据然后活动或者碎片中根据最新获得的数据更新UI。思考 首先定时想到定时器推荐使用系统自带的AlertManager而它需要启动一个pendingIntent所以想到将它放在一个服务中然后定时启动服务其次要从服务器获取数据不可以在主线程中进行所以需要异步加载想到AsynTask再接着考虑活动或者碎片要根据最新的数据进行UI更新那么如何进行更新呐这里想到广播前边通过定时器固定时间启动服务那么在启动服务的时候我们可以发送一条广播推荐本地广播然后新建一个类对广播进行监听当并且这个类需要实现一个接口当监听到广播时调用这个方法最后在活动或者碎片中启动服务绑定广播并实现前边接口的方法。总结Service、BroadcastReceiver、AlertManager、IListener完善运行后会出现俩个问题一个是因为AlertManager是属于系统的所以会出现当我们解除广播绑定并停止服务后在固定的时间内AlertManager再次启动服务为了解决这个问题可以新建一个单例类Alert用于管理AlertManager需要的pendingIntent实例和AlertManager实例然后在停止服务的地方掉用AlertManager的cancel方法停止定时任务。转载于:https://www.cnblogs.com/DaiLeGeMeng/p/7429353.html