0
私は現在、ウィジェットを押すと、共有設定を更新する必要があるプロジェクトで作業しています。共有設定では、 。Android:共有設定が共有設定に値を保存できません
Widget.class
:他の側に 、共有設定の同じコードは、アクティビティとサービスにその値を格納するが、ウィジェットが続きで作業されていませんが、私のコードスニペットです
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
super.onReceive(context, intent);
Toast.makeText(context,"Clicked",Toast.LENGTH_SHORT).show();
if (SYNC_CLICKED.equals(intent.getAction())) {
AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
RemoteViews remoteViews;
ComponentName watchWidget;
remoteViews = new RemoteViews(context.getPackageName(), R.layout.activity_main3);
watchWidget = new ComponentName(context, Main3Activity.class);
SharedPreferences prefs = context.getSharedPreferences("Settings", 0);
//battey_stats =mpref.getString("on_off", "15");
Toast.makeText(context,app,Toast.LENGTH_SHORT).show();
if(app.equals("OFF"))
{
app="ON";
SharedPreferences set =context. getSharedPreferences("Settings", 0); // 0 - for private mode
SharedPreferences.Editor editor = set.edit();
editor.putString("on_off", "OFF");
editor.commit();
remoteViews.setImageViewResource(R.id.button, R.drawable.unchecked_box);
}
else
{
Toast.makeText(context,"ONN",Toast.LENGTH_SHORT).show();
app="OFF";
SharedPreferences set =context. getSharedPreferences("Settings", 0); // 0 - for private mode
SharedPreferences.Editor editor = set.edit();
editor.putString("on_off", "OFF");
editor.commit();
remoteViews.setImageViewResource(R.id.button, R.drawable.icon);
}
// remoteViews.setTextViewText(R.id.button, "TESTING");
appWidgetManager.updateAppWidget(watchWidget, remoteViews);
}
}
ウィジェットをクリックすると画像が変化しますブロックが完全に動作する場合しかし共有設定は、値を格納しませんプラス共有設定の同じコードがサービスとのactivites
なぜ共有設定が動作しないのですか? –
あなたのバリアントは、環境設定が使用されるクラスに依存するため、 – Vyacheslav
私が書いたすべてのアプリケーションの使用の設定を共有したい場合は – Vyacheslav