次のシナリオ: ホーム画面に 3 つの同じウィジェットがあります。いずれかがクリックされると、ウィジェット構成アクティビティが開始されます。
これは、次のコードによって実装されました。
Intent intent = new Intent(context, WidgetConfigurator.class);
intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setData(Uri.parse(intent.toUri(Intent.URI_INTENT_SCHEME)));
PendingIntent pendIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
remoteView.setOnClickPendingIntent(R.id.widget_linearlayout, pendIntent);
起動は機能していますが、1 つの問題があります:
1. ウィジェット A がクリックされ、ウィジェット A の構成アクティビティが開かれる
2. ユーザーが「戻る」キーを押すと、構成アクティビティが消える
3. ウィジェット B がクリックされ、ウィジェット B の構成アクティビティが開かれる開いた
4. ユーザーが「戻る」キーを押す
=> ウィジェット A の構成アクティビティが表示されます
私は常に「実際の」構成アクティビティ (クリックされたウィジェットに適合) のみを表示したいと考えています。Intent / PendingIntent にはどの設定を使用する必要がありますか?
任意の助けのためのthx