PreferenceManager getDefaultSharedPreferences
Android Qで非推奨になりましたが、どのように置き換えるのですか?
回答:
のAndroidXサポートライブラリバージョンを使用できます。PreferenceManager
つまりandroidx.preference.PreferenceManager
、ではありませんandroid.preference.PreferenceManager
。
build.gradleに以下を追加することを忘れないでください。
implementation 'androidx.preference:preference:1.1.1'
implementation
ないようdependency
です?
パッケージpreference
はandroidx
PreferenceManagerを提供します:
Java: implementation "androidx.preference:preference:1.1.1"
Kotlin: implementation "androidx.preference:preference-ktx:1.1.1"
つまりandroid.preference.PreferenceManager
、androidx.preference.PreferenceManager
現在使用しているクラスであるPreferenceFragmentCompatも参照してくださいPreferenceFragment
。
PreferenceFragmentCompat
、当時は存在していませんでした...通常は、設定を更新しようとしたときに直面する可能性のある次の1つの非推奨の問題です。他のリンクされた回答は、限られた時間だけ有効でした。
キーと値のペアを保存および取得するだけの場合は、次のものを置き換えることができます。
prefs = PreferenceManager.getDefaultSharedPreferences(this);
と:
prefs = getSharedPreferences(
"my.app.packagename_preferences", Context.MODE_PRIVATE);
新しい実装には必ず正しいファイル名を使用してください。そうしないと、ユーザーはgetDefaultSharedPreferences(!)で保存されたすべてのものにアクセスできなくなります。以下は、getDefaultSharedPreferencesが使用するファイル名を取得します。
getPackageName() + "_preferences"
はい、非推奨です。すべてのデバイスで一貫した動作を実現するには、AndroidX設定ライブラリを使用してください。AndroidX設定ライブラリの使用の詳細については、「設定」を参照してください。
これに従ってください-