正确的方法来实现定时的家庭小部件? (蜂窝前)

时间:2013-02-24 20:30:10

标签: android timer android-widget broadcastreceiver

我在询问Google Play或Youtube等家庭小部件。它们反复循环通过5-10个项目,每隔5秒钟进入下一个项目。

我读到这可以通过报警管理器完成,但是在所有关于这一点的帖子中,人们都说,高更新率会消耗很多电池寿命。 In this post有人在谈论使用带Handler的计时器。但这是BroadcastReceiver中的有效方法吗?

每次使用闹钟管理器,我是否必须“唤醒”广播接收器以循环播放项目?或者这是怎么做到的?

感谢。

1 个答案:

答案 0 :(得分:1)

  

在这篇文章中,有人谈论使用Handler处理器。但这是BroadcastReceiver中的有效方法吗?

不是真的,因为只要您的流程存在,它才会起作用,这可能不会很长。

  

我不知道如何使用第三方主屏幕

从Play商店下载一个,安装它,按HOME,然后选择新安装的主屏幕。

  

因此,这些小部件可以执行此操作,因为它们随设备一起提供?

这不是我写的。

主屏幕是由程序员编写的程序。它可以做程序员选择的任何事情。

应用程序小部件涉及每次更新的进程间通信,这就是为什么如果更新很多它们有点贵。主屏幕不需要使用进程间通信来更新本身。因此,一些制造商提供的花哨的“应用程序小部件”不是通过AppWidgetProvider实现的,而是主屏幕应用程序本身的功能,只是列出并配置为好像它们是应用程序小部件。

  

他们反复循环通过5-10个项目,每隔5秒钟进入下一个项目。

在Android 3.0+上,最好的答案是使用AdapterViewFlipper,因为您不需要手动更新它 - AdapterViewFlipper将根据配置的更新提取下一部分内容周期..

在早期版本的Android上,您需要自己执行此操作,AlarmManager可能是最可靠的选项,如果它必须是基于时间的更新。请考虑让用户控制更新频率,包括完全禁用基于时间的更新。