通过intent启动的活动将小部件添加到主屏幕

时间:2011-05-24 09:54:15

标签: android widget android-intent

我正在尝试让我的主屏幕小部件触发新小部件的配置类,但是遇到了问题。

当用户第一次尝试将我的小部件添加到主屏幕时,它会启动一个线程,该线程会下载带有传感器列表的文件,然后退出。下载完成后,下载任务会触发通知。当用户点击通知时,它应该启动dataWidgetConfig活动。这可以使用此代码

mNotificationManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
final Notification notifyDetails = new Notification(R.drawable.icon,"Sensor list downloaded.",System.currentTimeMillis());

CharSequence contentTitle = "Notification Details...";
CharSequence contentText = "Sensor list has downloaded, tap to add widget.";

Intent notifyIntent = new Intent(self, dataWidgetConfig.class);
notifyIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
notifyIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId);

PendingIntent pendingIntent = PendingIntent.getActivity(self, appWidgetId, notifyIntent, 0);

notifyDetails.setLatestEventInfo(self, contentTitle, contentText, pendingIntent);
mNotificationManager.notify(SIMPLE_NOTFICATION_ID, notifyDetails);

我的问题是,我没有appWidgetId。当我通过长按主屏幕添加一个小部件时,我会分配一个appWidgetId,我如何询问主屏幕?我猜我不能只做一个,因为它可能已经在使用或稍后分配。

目前我的活动启动正常,但退出是因为我故意将appWidgetId设置为:

AppWidgetManager.INVALID_APPWIDGET_ID;

有人可以就此提出任何想法吗?

0 个答案:

没有答案