我的应用程序中有一个小部件,它被搞砸了(其中一个资源,一个计数器,只有当大于0时才能看到它,并且它不再对印刷机作出反应)每次我安装/删除/更新第三方应用程序,因为可能会调用onUpdate()方法并且我编写的代码未正确执行。
AppWidgetManager肯定会对以下意图做出反应:
android.intent.action.PACKAGE_ADDED
android.intent.action.PACKAGE_REMOVED
android.intent.action.PACKAGE_RESTARTED
但是如何让小部件不对这些意图作出反应呢,它甚至没有在清单中为它们注册?
答案 0 :(得分:0)
您是否尝试重写onReceive方法并检查意图?我提供了一个简单的例子。
if(intent.getAction().compareTo("android.intent.action.PACKAGE_ADDED") != 0) {
//do something cool;
}
这应该允许您检查传入的意图并过滤掉您不想要的内容
答案 1 :(得分:0)
尝试将这些操作添加到清单中...并避免在onReceive
方法中对它们做出反应,这在某种程度上是微不足道的解决方案,但它会做到!