1

私は少し持ってappwidgetconfiguration activityます。には
、 特定の文字列を格納するための と、ウィジェットを作成するためのボタンがあります。 ウィジェット自体には、ボタンを表示する静止画像のある のみがあります。 configuration activityEditText

Imageview

ボタンを押すと、次のようになります。

AppWidgetManager app_widget_manager = AppWidgetManager.getInstance(context);
RemoteViews local = new RemoteViews(context.getPackageName(), R.layout.main);
app_widget_manager.updateAppWidget(widget_id, local);

Intent create = new Intent(this, MyWidget.class);
create.setAction("com.test.mywidget.CREATE");
create.putExtra("toastmessage", edittext1.getText().toString);
context.sendBroadcast(create);

Intent result_value = new Intent();
result_value.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, widget_id);
setResult(RESULT_OK, result_value);
finish();

余分な'toastmessage'ものは編集テキストの内容です。

ウィジェットでは、ブロードキャストをキャッチし、以前に新しいウィジェットに 余分onReceive()に渡された文字列値を取得します。
'toastmessage'

ウィジェットを押すと、渡された文字列でトーストを作成します
-これが私の問題です-
渡された文字列は、作成されたウィジェットごとに異なります。しかし、渡された文字列を保存する
(ウィジェット内の) 変数は、しばらくするとリセットされるか、電話が再起動されたり、アプリ が強制終了されたりするため、すべてのウィジェットインスタンス に永続的なデータが 必要です。

どのウィジェットがどの文字列を渡されたかを保存し、ウィジェットが更新されるたびにこのデータ
を取得する必要があります。 どうすればこれを達成できますか?

4

2 に答える 2