2013 年大家好!
我有以下安卓挑战:
假设我有一个由活动和小部件组成的应用程序。这两个都提供尽可能实际的相同信息 - 因此,如果可能,我有一个服务挖掘请求的数据并将消息对象发送到活动或小部件的处理程序。我可以接受它会导致大量电池消耗等等,这不是问题。
小部件有三种可能的布局。当前布局是动态确定的(取决于来自服务的数据)并通过远程视图设置。
现在我的问题:我希望能够通过点击小部件来打开/关闭服务。我已经将 PendingIntent 实现为 onClickPendingIntent (可能名称不同,没关系)和 onReceive 方法来处理这个。它工作得很好,但只有一段时间。创建小部件后,我可以通过点击小部件来触发意图。但是几分钟后(不确定)它什么也没做,并且意图不再被 onReceive 捕获。我在日志中发现,在它停止响应我的事件之前,小部件中收到了一个意图 ACTION_READY 意图。有什么方法可以设置小部件随时听我的触摸吗?
我对小部件僵尸有另一个问题。我试图用谷歌搜索一些关于小部件的文档,但没有找到任何合适的文档。如果系统决定终止我的进程,屏幕上仍然会挂着死掉的小部件 UI。它没有响应任何手势,我猜它也没有处理任何消息。是否有机会以编程方式唤醒此小部件(例如从服务中)?
如果有人帮助我,我将在两周内过第二个圣诞节。非常感谢!