我想制作一个每秒更新(更多电池消耗)或最小(更少电池消耗)的小部件。
我跟在this thread
中一样,但每30分钟只运行一次。
我配置了一旦onUpdate运行,它会在1分钟内更新 onReceived每30分钟运行一次。
谁能告诉我我做错了什么?
答案 0 :(得分:2)
根据我的经验AlarmManager
不能很好地(或根本不会),间隔小于1分钟。除了:
注意:警报管理器适用于您想要的情况 即使您的应用程序,您的应用程序代码也会在特定时间运行 目前没有运行。对于正常的计时操作(刻度, 超时等)使用Handler更容易,效率更高。
此外:
注意:从API 19(KITKAT)开始,警报传递是不准确的:操作系统 将移动警报以最小化唤醒和电池使用。那里 是支持需要严格交付的应用程序的新API 担保;请参阅setWindow(int,long,long,PendingIntent)和 setExact(int,long,PendingIntent)。应用程序 targetSdkVersion早于API 19将继续看到 以前的行为,其中所有警报都在何时传递 请求。
答案 1 :(得分:0)
您没有做错任何事情,小部件服务确实每30分钟(最少)更新一次。
要使其更新速度更快,您需要使用AlarmManager或您自己的应用程序来调用该服务。与soulreaver回答不同,报警管理器的工作时间不到1分钟。