SharedPreferences は、アプリケーション データを Android に保存するために使用されます。
commit()
両方ともapply()
共有設定の変更を保存するために使用されます。
Androidライブラリで述べたように:
public abstarct void apply():
設定を永続ストレージに同期的に書き込む commit() とは異なり、apply() は変更をメモリ内の SharedPreferences にすぐにコミットしますが、ディスクへの非同期コミットを開始するため、失敗は通知されません。この SharedPreferences の別のエディターが通常の commit() を実行し、apply() がまだ未解決である場合、commit() はすべての非同期コミットとコミット自体が完了するまでブロックされます。
public abstract boolean commit ():
設定の変更を、このエディタから編集中の SharedPreferences オブジェクトにコミットします。これにより、要求された変更がアトミックに実行され、現在 SharedPreferences にあるものはすべて置き換えられます。
commit()
これは、 による変更がと比較して瞬時に行われることを意味しapply()
ますか? どちらの方がよいですか?
次の直近のアクティビティで同じ共有プリファレンス値を使用する必要がある場合、どれを使用すればよいですか? 私が見たように、Preference の値が更新されても、アプリケーションを再起動するまで反映されません。