import android.preference.PreferenceManager;
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
// then you use
prefs.getBoolean("keystring", true);
Güncelleme
Paylaşılan Tercihlere Göre | Sai Geetha MN tarafından Android Geliştirici Eğitimi (Bölüm 13) ,
Birçok uygulama, belirli bir uygulamanın veya etkinliğin ayarlarındaki kullanıcı tercihlerini yakalamak için bir yol sağlayabilir. Bunu desteklemek için Android, basit bir API seti sunar.
Tercihler genellikle ad değeri çiftleridir. Bir uygulamadaki çeşitli etkinlikler arasında “Paylaşılan Tercihler” olarak saklanabilirler (şu anda işlemler arasında paylaşılamayacağını unutmayın). Veya bir etkinliğe özgü saklanması gereken bir şey olabilir.
Paylaşılan Tercihler: Paylaşılan tercihler, uygulamaların tüm bileşenleri (etkinlikler, hizmetler vb.) Tarafından kullanılabilir.
Etkinlikle ilgili tercihler: Bu tercihler yalnızca belirli bir etkinlik dahilinde kullanılabilir ve uygulamanın diğer bileşenleri tarafından kullanılamaz.
Paylaşılan Tercihler:
Paylaşılan tercihler getSharedPreferences
, Context
sınıfın yöntemi yardımıyla yönetilir . Tercihler varsayılan bir dosyada (1) saklanır veya tercihlere başvurmak için kullanılacak bir dosya adı (2) belirtebilirsiniz .
(1) Önerilen yol , dosya adını belirtmeden varsayılan modda kullanmaktır
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
(2) Dosya adını belirttiğinizde örneği nasıl alacağınız aşağıda açıklanmıştır
public static final String PREF_FILE_NAME = "PrefFile";
SharedPreferences preferences = getSharedPreferences(PREF_FILE_NAME, MODE_PRIVATE);
MODE_PRIVATE
tercihler için çalışma modudur. Varsayılan moddur ve oluşturulan dosyaya yalnızca çağıran uygulama tarafından erişileceği anlamına gelir. Desteklenen diğer iki mod MODE_WORLD_READABLE
ve MODE_WORLD_WRITEABLE
. Gelen MODE_WORLD_READABLE
başka bir uygulama oluşturulan dosyayı okuyabilir ancak bunu değiştiremez. Durumunda MODE_WORLD_WRITEABLE
diğer uygulamalar da oluşturulan bir dosya için yazma izniniz.
Son olarak, tercihler örneğine sahip olduğunuzda , saklanan değerleri tercihlerden nasıl alabileceğiniz aşağıda açıklanmıştır :
int storedPreference = preferences.getInt("storedInt", 0);
To değerlerini saklamak tercih dosyası içinde SharedPreference.Editor
nesne kullanılmalıdır. sınıftaki Editor
iç içe bir arabirimdir SharedPreference
.
SharedPreferences.Editor editor = preferences.edit();
editor.putInt("storedInt", storedPreference); // value to store
editor.commit();
Editör ayrıca yöntemleri gibi destekler remove()
ve clear()
dosyadan tercih değerleri silmek.
Etkinlik Tercihleri:
Paylaşılan tercihler diğer uygulama bileşenleri tarafından kullanılabilir. Ancak, tercihleri diğer bileşenlerle paylaşmanız gerekmiyorsa ve etkinlik özel tercihlerine sahip olmak istiyorsanız, bunu getPreferences()
etkinlik yönteminin yardımıyla yapabilirsiniz . getPreference
Yöntem kullanan getSharedPreferences()
tercih dosya adını etkinlik sınıfının adını yöntem.
Tercihleri almak için kod aşağıdadır
SharedPreferences preferences = getPreferences(MODE_PRIVATE);
int storedPreference = preferences.getInt("storedInt", 0);
Değerleri saklamak için kullanılan kod, paylaşılan tercihlerde olduğu gibi aynıdır.
SharedPreferences preferences = getPreference(MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.putInt("storedInt", storedPreference); // value to store
editor.commit();
Etkinlik durumunu veritabanında depolamak gibi diğer yöntemleri de kullanabilirsiniz. Not Android ayrıca adlı bir paket içerir android.preference
. Paket, uygulama tercihleri kullanıcı arayüzünü uygulamak için sınıfları tanımlar.
Daha fazla örnek görmek için geliştiricilerin sitesindeki Android'in Veri Depolama yayınına bakın.