Sobes.tech
Junior

SharedPreferences деген эмне жана аны кантип колдонуу керек?

sobes.tech AI

AIден жооп

SharedPreferences — бул кичинекей маалыматтарды ачкыч-маалымат жуптары түрүндө сактоо үчүн жөнөкөй механизм. Колдонуучу жөндөөлөрүн же кичинекей белгилерди сактоо үчүн идеалдуу.

Колдонуу:

  1. Тамга кошуу: pubspec.yaml файлына кошуңуз:

    dependencies:
      flutter:
        sdk: flutter
      shared_preferences: ^2.2.0 # Актуалдуу версияны колдонуңуз
    

    жана flutter pub get командасын иштетүү.

  2. Импорттоо:

    import 'package:shared_preferences/shared_preferences.dart';
    
  3. Мисалды алуу:

    // Асинхрондуу операция
    SharedPreferences prefs = await SharedPreferences.getInstance();
    
  4. Маалыматты жазуу:

    // Жолду жазуу
    prefs.setString('username', 'Alice');
    // Санды (int)
    prefs.setInt('age', 30);
    // Санды (double)
    prefs.setDouble('salary', 50000.50);
    // Булев типтеги маанини жазуу
    prefs.setBool('darkMode', true);
    // Жолдордун тизмеси
    prefs.setStringList('items', ['item1', 'item2']);
    

    Бардык жазуу ыкмалары Future<bool> кайтарат, ал иштин ийгилигин көрсөтөт.

  5. Маалыматты окуу:

    // Жолду окуу
    String? username = prefs.getString('username'); // Эгер ачкыч жок болсо, null кайтарат
    // Санды (int)
    int? age = prefs.getInt('age');
    // Санды (double)
    double? salary = prefs.getDouble('salary');
    // Булев мааниси
    bool? darkMode = prefs.getBool('darkMode');
    // Жолдордун тизмеси
    List<String>? items = prefs.getStringList('items');
    
  6. Маалыматты өчүрүү:

    // Ачкыч боюнча өчүрүү
    prefs.remove('username'); // `Future<bool>` кайтарат
    // Бардык маалыматты өчүрүү
    prefs.clear(); // `Future<bool>` кайтарат
    

Чектөөлөр:

  • Көп маалымат же татаал түзүмдөр үчүн ылайыктуу эмес.
  • Маалымат ачык түрдө сакталат (приложение деңгээлинде), сезимтал маалыматтар үчүн ылайыктуу эмес.
  • Негизги түрлөр менен иштейт. Объекттер үчүн сериализация/десериализация талап кылынат (мисалы, json аркылуу).