Flutter Shared Preferences(Paylaşılan Tercihler) Kullanımı

Flutter Shared Preferences(Paylaşılan Tercihler) Kullanımı

-Paket adresi : https://pub.dartlang.org/packages/shared_preferences
-Uygulama kapatıldığında uygulama ayarlarını anahtar değer çifti şeklinde saklamaya olanak sağlar.
-Paylaşılan Tercihler XML formatında saklanır.
-Uygulamayı kaldırmak yada ayarlardan uygulama verilerini silmek o uygulamanın Shared Preferences verilerinin silinmesine neden olur. Ön bellk temizlenmesi ile silinmez!
-Shared Preferences asıl kullanımı kullanıcı tercihlerini, ayarları, küçük verileri kaydetmektir, böylece uygulama bir daha başlatıldığında, bu bilgiler çekilip kullanılabilir.
 
 
Paket Kullanımı
 
1. pubspec.yaml dosyasında dependencies: altına shared_preferences: ^0.5.2+2 ekle ve dosyayı kaydet. Otomatik olarak flutter paketi indirip ekleyecek.
 
dependencies:
  shared_preferences: ^0.5.2+2
 
2. yaml dosyasını kaydettikten sonra eğer dosya indirilmesi başlamaz ise  konsoldan “flutter pub get” yazıp entera basarak indirme işlemini başlatabilirsiniz.
 
 
3. Kullanılmak istenen dosyaya import etmek
import ‘package:shared_preferences/shared_preferences.dart’;
 
4. Kayıtlara erişmek ve dğiştirmek için sunulan fonksiyon listesi
 
Kayıt Okumak, Getters;
 
Değer talep edilen türde değil ise hata döndürür. getBool(String key); örneğinde değer bool türünde değil ise hata döner.
 
Set<String> getKeys(); // tüm key leri döndürür.
bool containsKey(String key); // böyle bir key mevcut ise true döndürür.
 
dynamic get(String key);// verilen key’in  atanmış olan değeri dynamic tipindedir, her tipte değer döndürebilir.
bool getBool(String key);// verilen key’in  atanmış olan değeri bool’dur bu  bool değeri döndürür.
int getInt(String key); // verilen key’in  atanmış olan değeri int’dur bu  int değeri döndürür.
double getDouble(String key);// verilen key’in  atanmış olan değeri Double’dur bu  Double değeri döndürür.
String getString(String key); // verilen key’in  atanmış olan değeri string’tir bu  string değeri döndürür.
List<String> getStringList(String key); //String array(list<String>) kaydı döndürür.
 
 
 
Kayıt Girmek, Setters;
 
Tüm setterler bool döndürür.
Tüm setterler için null değerleri remove olarak değerlendirilir. Yani anahtar ve değer silinir.
 
Future<bool> setBool(String key, bool value);//İlişkili anahtara bool değer kaydeder.
Future<bool> setInt(String key, int value); //İlişkili anahtara int değer kaydeder.
Future<bool> setDouble(String key, double value); //İlişkili anahtara Double değer kaydeder. Android te float olarak kaydedilir.
Future<bool> setString(String key, String value); //İlişkili anahtara String değer kaydeder.
Future<bool> setStringList(String key, List<String> value); //İlişkili anahtara String listesi kaydı girer.
 
 
Kayıt Silmek;
 
Future<bool> remove(String key); // Bir anahtarı kalıcı bellekten kaldırır ve true döndürür. Tüm setterler için null değerleri remove olarak değerlendirilir. Yani anahtar ve değer silinir.
 
Tüm Kayıtları Temizlemek;
Future<bool> clear() ;// kullanıcı verilerinin tüm anahtar değer  çiftlerini siler ve true döndürür
 
 
 
Future<bool> _setValue(String valueType, String key, Object value);
Future<bool> commit(); //İOS’ta senkronizasyon kullanımdan kaldırıldı olarak işaretlendi. Android’de, her seti taahhüt eder.
 
Test için Sahte Kayıt Başlatmak;
static void setMockInitialValues(Map<String, dynamic> values); // sharet preferences   test için sahte değerler ile başlatır
 
 
 
5. Kullanımı
 
 
 
class SharedPreferencesHelper {
 
 
//Kayıt Okumak, Getters;
 
// tüm key leri döndürür.
 static Future<Set<String>> tumKeyleriGetir() async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
 
return prefs.getKeys();
 }
 
 // böyle bir key mevcut ise true döndürür.
 static Future<bool> keyVarmi(String key) async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
 
return prefs.containsKey(key);
 }
 
 
// verilen key’in  atanmış olan değeri dynamic tipindedir, her tipte değer döndürebilir.
 static Future<dynamic> kayitOkuDynamic(String key) async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
 
return prefs.get(key) ?? ‘degeryok’;
 }
 
// verilen key’in  atanmış olan değeri bool’dur bu  bool değeri döndürür.
 static Future<bool> kayitOkuBool(String key) async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
 
return prefs.getBool(key) ?? false;
 }
 
// verilen key’in  atanmış olan değeri int’dur bu  int değeri döndürür.
 static Future<int> kayitOkuInt(String key) async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
 
return prefs.getInt(key) ?? 0;
 }
 
// verilen key’in  atanmış olan değeri Double’dur bu  Double değeri döndürür.
 static Future<double> kayitOkuDouble(String key) async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
 
return prefs.getDouble(key) ?? 0;
 }
 
// verilen key’in  atanmış olan değeri string’tir bu  string değeri döndürür.
 static Future<String> kayitOkuString(String key) async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
 
return prefs.getString(key) ?? ‘degeryok’;
 }
 
//String array(list<String>) kaydı döndürür.
 static Future<List<String> > kayitOkuStringList(String key) async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
 
return prefs.getStringList(key) ?? ‘degeryok’;
 }
 
 
 
//Kayıt Girmek, Setters;
 
//Tüm setterler bool döndürür.
//Tüm setterler için null değerleri remove olarak değerlendirilir. Yani anahtar ve değer silinir.
 
//İlişkili anahtara bool değer kaydeder. Başarılı ise true döndürür
 static Future<bool> kayitGirBool(String key, bool value) async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
 
return prefs.setBool( key,  value);
 }
 
//İlişkili anahtara int değer kaydeder. Başarılı ise true döndürür
 static Future<bool> kayitGirInt(String key, int value) async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
 
return prefs.setInt( key,  value);
 }
 
//İlişkili anahtara Double değer kaydeder. Başarılı ise true döndürür
 static Future<bool> kayitGirDouble(String key, double value) async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
 
return prefs.setDouble( key,  value);
 }
 
//İlişkili anahtara String değer kaydeder. Başarılı ise true döndürür
 static Future<bool> kayitGirString(String key, String value) async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
 
return prefs.setString( key,  value);
 }
 
//İlişkili anahtara StringList değer kaydeder. Başarılı ise true döndürür
 static Future<bool> kayitGirStringList(String key, List<String> value) async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
 
return prefs.setStringList( key, value);
 }
 
 
 
//Kayıt Silmek;
 
// Bir anahtarı kalıcı bellekten kaldırır ve true döndürür. Tüm setterler için null değerleri remove olarak değerlendirilir. Yani anahtar ve değer silinir.
 static Future<bool> birKayitSil(String key) async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
 
return prefs.remove(key);
 }
 
// kullanıcı verilerinin tüm anahtar değer  çiftlerini siler ve true döndürür
 static Future<bool> tumKayitSil() async {
final SharedPreferences prefs = await SharedPreferences.getInstance();
 
return prefs.clear();
 }
 
 
}

Bir cevap yazın

KAPAT
%d blogcu bunu beğendi: