Я пытаюсь, чтобы мой виджет на главном экране запускал класс конфигурации для нового виджета, но у меня возникла проблема.
Когда пользователь впервые пытается добавить мой виджет на домашний экран, он запускает поток, который загружает файл со списком датчиков и затем завершает работу. После завершения загрузки задача загрузки вызывает уведомление. Когда пользователь нажимает на уведомление, он должен начать действие 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;
Кто-нибудь может дать мне какие-нибудь идеи по этому поводу?