私は少し持ってappwidget
いconfiguration activity
ます。には
、
特定の文字列を格納するための と、ウィジェットを作成するためのボタンがあります。
ウィジェット自体には、ボタンを表示する静止画像のある のみがあります。 configuration activity
EditText
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'
ウィジェットを押すと、渡された文字列でトーストを作成します
-これが私の問題です-
渡された文字列は、作成されたウィジェットごとに異なります。しかし、渡された文字列を保存する
(ウィジェット内の) 変数は、しばらくするとリセットされるか、電話が再起動されたり、アプリ
が強制終了されたりするため、すべてのウィジェットインスタンス に永続的なデータが
必要です。
どのウィジェットがどの文字列を渡されたかを保存し、ウィジェットが更新されるたびにこのデータ
を取得する必要があります。
どうすればこれを達成できますか?