如何为 Android 应用程序提供更好的省电数据更新服务
我正在构建一个 Android 应用程序,用于获取互联网数据并将其呈现为列表。数据每分钟都在变化,所以我做了一个服务,并使用定时器以一定的间隔加载数据。
我的问题是:
- 我想知道应用程序(不是特定活动)何时进入后台,例如,用户按下主页按钮,在这种情况下,我想暂停服务以节省电池。
- 我想知道手机何时处于睡眠状态(屏幕变暗),在这种情况下,我也想暂停服务。
有什么想法吗?
I am building an android app for fetching internet data and rendering it as a list. The data is changing every minute, so I made a service and used a Timer to load the data with an interval.
My question is that:
- I want to know when the app (not a particular activity) goes to the background, for example, user pressed the home button, in that case, I want to pause the service in order to save battery.
- I want to know when the phone is sleeping (screen dimmed), in that case, I would like to pause the service too.
Any ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
onPause
中暂停您的服务(并在onResume
中恢复)。详细说明1:我知道你说的是“应用程序”,而不是“特定活动”,但你最好的选择是使用
Activity.onPause
和Activity.onResume
。如果有的话,您可以添加一个短暂的延迟,这样如果 onPause 紧随 onResume 之后就不会发生任何事情。onPause
(and resume inonResume
).To elaborate on 1: I understand you're saying "app", not "a particular activity", but your best bet is to use
Activity.onPause
andActivity.onResume
. If anything, you can add a short delay so that nothing happens if onPause is followed immediately by onResume.