同事们!我的问题是:我有一个带有配置活动的应用程序小部件(最低SDK-2.1),它能正常运行,但有时会开始变慢。我记录了日志并发现,在更新我的应用程序小部件之前,onUpdate方法会收到一组应用程序小部件ID。
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
Log.d("onUpdate", Arrays.toString(appWidgetIds));
但事实是,我在主屏幕上只有两个App小部件的实例,但数组的长度超过了2(两个):4、有时是5或6。怎么可能呢?我的AppWidget更新变慢的原因是,我必须为所有ID调用onUpdate方法,但有些ID(如某个人所说的“幽灵小部件”)不是真正的而且不正确。
也许,有人遇到过这样的问题,并会帮助我找出如何处理真正的应用程序小部件ID。
P.S. 卸载然后重新安装应用程序小部件(之后所有幽灵小部件都消失了)-并不是解决我的问题的适当方法。我想以编程方式控制幽灵和真正的小部件。
是否有人有解决这个bug的任何想法?