在锁屏上删除Widgets时没有调用android – onReceive – Nexus 7

我想在Jelly Bean的锁定屏幕上启用我的小部件(Nexus 7,
Android 4.2.1)

我的问题是,当您从锁定屏幕中删除小部件时,永远不会调用onReceive(),在添加/删除它时创建尽可能多的ghost小部件.

它在主屏幕上工作正常(你删除一个小部件,onReceive()被调用,然后是onDelete(),如果它是最后一个小部件onDisable()),但是在锁定屏幕上没有工作.

在锁定屏幕上,为APPWIDGET_ENABLED,APPWIDGET_UPDATE和APPWIDGET_UPDATE_OPTIONS调用onReceive(),就是这样.

要将小部件放在锁定屏幕中,您只需要将android:widgetCategory =“home_screen | keyguard”添加到您的小部件并在锁定屏幕上进行测试

最佳答案 与我的Jelly Bean锁屏小部件有相同的经验.永远不会调用onReceive(),onDelete()和onDIsable(),即使从锁定屏幕中删除它,小部件也会保持更新.我的Galaxy Nexus(4.2.1)和Nexus 7(4.2.1)的行为相同.

重新启动后,ghost小部件会消失.

也许与内置锁屏小部件的行为有关.删除后再次出现时钟.

希望这一点在文档中得到澄清.

点赞