👐Shared Preferences

Telefonda Shared Preference yapısı ile veri saklama

🚧 Dosyaları Oluşturma

private String sharedPrefFile = "com.example.android.hellosharedprefs";
mPreferences = getSharedPreferences(sharedPrefFile, MODE_PRIVATE);

💾 Dosyaları Kaydetme

@Override
protected void onPause() {
    super.onPause();
    SharedPreferences.Editor preferencesEditor = mPreferences.edit();
    preferencesEditor.putInt("count", mCount);
    preferencesEditor.putInt("color", mCurrentColor);
    preferencesEditor.apply();
}

🔄 Dosyaları Geri Alma

mPreferences = getSharedPreferences(sharedPrefFile, MODE_PRIVATE);
if (savedInstanceState != null) {
    mCount = mPreferences.getInt("count", 1);
    mShowCount.setText(String.format("%s", mCount));

    mCurrentColor = mPreferences.getInt("color", mCurrentColor);
    mShowCount.setBackgroundColor(mCurrentColor);
} else { ... }

🧹 Dosyaları Temizleme

SharedPreferences.Editor preferencesEditor = mPreferences.edit();
preferencesEditor.putInt("number", 42);
preferencesEditor.clear();
preferencesEditor.apply();

👀 Değişikleri Takip Etme

public class SettingsActivity extends PreferenceActivity
                              implements OnSharedPreferenceChangeListener {
    public static final String KEY_PREF_SYNC_CONN = 
       "pref_syncConnectionType";

    // ...

    public void onSharedPreferenceChanged(
                              SharedPreferences sharedPreferences,
                              String key) {
        if (key.equals(KEY_PREF_SYNC_CONN)) {
            Preference connectionPref = findPreference(key);
            // Set summary to be the user-description for 
            // the selected value
            connectionPref.setSummary(
               sharedPreferences.getString(key, ""));
        }
    }
}
@Override
protected void onResume() {
    super.onResume();
    getPreferenceScreen().getSharedPreferences()
            .registerOnSharedPreferenceChangeListener(this);
}

@Override
protected void onPause() {
    super.onPause();
    getPreferenceScreen().getSharedPreferences()
            .unregisterOnSharedPreferenceChangeListener(this);
}
SharedPreferences.OnSharedPreferenceChangeListener listener =
    new SharedPreferences.OnSharedPreferenceChangeListener() {
       public void onSharedPreferenceChanged(
                            SharedPreferences prefs, String key) {
          // listener implementation
       }
};

prefs.registerOnSharedPreferenceChangeListener(listener);

🗑️ Eski Notlar

🏗️ Veri Oluşturma ve Alma

  • val veri= this.getSharedPreferences(this.packageName, android.content.Context.MODE_PRIVATE) // Veri kaydını değişkene atama

    • this.packageName : paket ismi (com.... en üst satırdaki)

    • MODE_PRIVATE : sadece benim uygulamamdan erişilebilirlik

  • var age1 = 30

  • veri.edit().putInt("userAge", age1).apply() // Veriyi kaydetme

    • userAge : anahtar

    • age1 : değer / değişken

  • val age2= veri.getInt("userAge", 0) // Kayıtlı veriyi alma

    • userAge : anahtar (put'takini almak için aynı olmalı)

    • 0 : Eğer anahtar yoksa, varsayılan değer ataması

  • println("stored age : $storedAge") // veriyi gösterme

✨ Veri Güncelleme

age = 31
veri.edit().putInt("userAge", age).apply() // Daha önceden olan bir anahtarın üstüne kaydedilirse güncelleme olur.

🧼 Veri Silme

  • veri.edit().remove("userAge").apply() // Veri silindi

    • userAge : silinecek anahtar

  • val age3 = veri.getInt("userAge", 0) // Veri olmadığı için age3 = 0 olacak.

    • userAge : anahtar

    • 0 : varsayılan değer

🔗 Faydalı Bağlantılar

Last updated

© 2024 ~ Yunus Emre Ak ~ yEmreAk