Android:自定义时钟小部件服务解决方法?

2024-03-31

我有兴趣为主屏幕开发时钟小部件并阅读后主屏幕小部件教程 http://android-developers.blogspot.com/2009/04/introducing-home-screen-widgets-and.html,我想知道是否有一个预先存在的Service我可以参考更新当前时间而不是重新发明轮子吗?

我下载的是复古时钟我的 Android 手机上的应用程序,注意到当我单击它时,它会弹出闹钟设置,但使用默认的 Google模拟时钟小部件,单击后不执行任何操作。

那是因为复古时钟小部件实现闹钟服务?如果是这样,我该如何引用该服务?或者我这一切都错了并且被误解了?

任何帮助表示赞赏。

EDIT:

我相信实施更新时钟的服务会极大地消耗电池寿命,任何解决方法的想法或有助于阐明使用时出现的任何性能问题Service?


我的猜测:复古时钟小部件响应触摸,并触发启动闹钟设置页面的意图。您可以查看 Android 源代码以了解其意图。要了解如何连接您的小部件以实际触发意图,您可以查看Android 开发指南中的代码示例 http://developer.android.com/guide/topics/appwidgets/index.html#AppWidgetProvider.


对于时钟小部件,您似乎有两个要求。它需要至少每分钟更新一次,但不需要在设备睡眠时更新。这是我找到的一句话:

注意:如果设备在更新时处于睡眠状态(由 updatePeriodMillis 定义),则设备将被唤醒以执行更新。如果每小时更新次数不超过一次,这可能不会对电池寿命造成重大问题。但是,如果您需要更频繁地更新和/或不需要在设备休眠时更新,那么您可以根据不会唤醒设备的警报来执行更新。为此,请使用 AlarmManager 使用 AppWidgetProvider 接收的 Intent 设置警报。将闹钟类型设置为 ELAPSED_REALTIME 或 RTC,这样只会在设备唤醒时发出闹钟。然后将 updatePeriodMillis 设置为零(“0”)。

(来自应用程序小部件指南 http://developer.android.com/guide/topics/appwidgets/index.html#MetaData)


顺便说一句,我有机会玩 HTC Hero。我注意到,当您将英雄从睡眠中唤醒时,其模拟时钟小部件上的指针会从 12 点开始。然后,它会旋转指针以达到正确的时间。这可能是因为他们在手机休眠时不会更新它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android:自定义时钟小部件服务解决方法? 的相关文章

随机推荐