1. ホーム
  2. android

[解決済み] SharedPreferencesのcommit()とapply()の違いは何ですか?

2022-03-20 23:31:17

質問

を使っています。 SharedPreferences をアンドロイドアプリで使用しています。私は commit()apply() メソッドを共有環境設定から削除しました。AVD2.3ではエラーは出ませんが、AVD2.1でコードを実行したところ apply() メソッドがエラーを表示します。

では、この2つの違いは何でしょうか?また commit() は、問題なくプリファレンス値を保存できますか?

どのように解決するのですか?

apply() が 2.3 で追加され、そのコミットは なし は、成功または失敗を示すブール値を返します。

commit() は以下を返します。 保存が成功した場合。 false それ以外の場合は

apply() は、Android 開発チームが、ほとんど誰も戻り値に注目しないことに気づいて追加したもので、非同期であるため、apply の方が高速です。

http://developer.android.com/reference/android/content/SharedPreferences.Editor.html#apply()