PreferenceManager getDefaultSharedPreferences
Android Q'da kullanımdan kaldırıldı , nasıl değiştirebilirim?
PreferenceManager getDefaultSharedPreferences
Android Q'da kullanımdan kaldırıldı , nasıl değiştirebilirim?
Yanıtlar:
Sen AndroidX destek kitaplığı sürümünü kullanabilirsiniz PreferenceManager
, yani androidx.preference.PreferenceManager
değil android.preference.PreferenceManager
.
build.gradle dosyanıza aşağıdakileri eklemeyi unutmayın.
implementation 'androidx.preference:preference:1.1.1'
implementation
değil dependency
mi?
Paket preference
, androidx
PreferenceManager'ı sağlar :
Java: implementation "androidx.preference:preference:1.1.1"
Kotlin: implementation "androidx.preference:preference-ktx:1.1.1"
yani değişim android.preference.PreferenceManager
içinandroidx.preference.PreferenceManager
Ayrıca , kullanılacak geçerli sınıf olan PreferenceFragmentCompat'a da bakın PreferenceFragment
.
PreferenceFragmentCompat
O zamanlar mevcut olmayan bir doğrudan bağlantı eklendi ... genellikle tercihleri güncellemeye çalışırken karşılaşılabilecek bir sonraki kullanımdan kaldırma sorunudur. Diğer bağlantılı cevap sadece sınırlı bir süre için geçerliydi.
Yalnızca anahtar / değer çiftlerini kaydediyor ve alıyorsanız, şunları değiştirebilirsiniz:
prefs = PreferenceManager.getDefaultSharedPreferences(this);
ile:
prefs = getSharedPreferences(
"my.app.packagename_preferences", Context.MODE_PRIVATE);
Yeni uygulama için doğru dosya adını kullandığınızdan emin olun, aksi takdirde kullanıcılarınız getDefaultSharedPreferences (!) İle kaydedilen her şeye erişimlerini kaybedeceklerdir. Aşağıdakiler getDefaultSharedPreferences'ın kullandığı dosya adını alır:
getPackageName() + "_preferences"
PreferenceManager
Belgelerden alıntı :
Bu sınıf, API seviyesi 29'da
kullanımdan kaldırılmıştır . Tüm cihazlarda tutarlı davranış için AndroidX Tercih Kitaplığı'nı kullanın . AndroidX Tercih Kitaplığı'nı kullanma hakkında daha fazla bilgi için Ayarlar'a bakın .
Evet, kullanımdan kaldırıldı. Tüm cihazlarda tutarlı davranış için AndroidX Tercih Kitaplığı'nı kullanın. AndroidX Tercih Kitaplığını kullanma hakkında daha fazla bilgi için bkz. Ayarlar
Bunu takip et -
kotlin libray
implementation 'androidx.preference:preference-ktx:1.1.1'
kotlin Configuration.getInstance (). load kullanın (this, androidx.preference.PreferenceManager.getDefaultSharedPreferences (this))