Flutter本地数据存储插件flutter_ume_kit_shared_preferences的使用

Flutter本地数据存储插件flutter_ume_kit_shared_preferences的使用

flutter_ume_kit_shared_preferences

基于UME下的shared_preferences插件,可以实时查看、修改或删除所有shared_preferences缓存的key的值。


接入UME Example

只需将整个flutter_ume_kit_shared_preferences放入kit中本地导入,并在pubspec.yaml中进行配置。例如:

dependencies:
  flutter_ume_kit_shared_preferences:
    path: ../kits/flutter_ume_kit_shared_preferences

然后在main.dart中新增如下代码,SharedPreferencesInspector模块即可被带入UME主模块:

import 'package:flutter_ume/flutter_ume.dart';
import 'package:flutter_ume_kit_shared_preferences/shared_preferences_inspector.dart';

void main() {
  // 注册SharedPreferencesInspector模块
  UME().init(
    modules: [
      SharedPreferencesInspector(),
    ],
  );

  runApp(MyApp());
}

不接入UME Example运行

如果不接入UME,也可以直接运行自带的demo。只需要在main.dart中找到以下代码并运行即可:

import 'package:flutter/material.dart';
import 'package:flutter_ume/flutter_ume.dart';
import 'package:flutter_ume_kit_shared_preferences/shared_preferences_inspector.dart';

void main() {
  // 注册SharedPreferencesInspector模块
  UME().init(
    modules: [
      SharedPreferencesInspector(),
    ],
  );

  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(title: Text('SharedPreferences Demo')),
        body: Center(
          child: ElevatedButton(
            onPressed: () async {
              // 示例:保存数据到SharedPreferences
              final prefs = await SharedPreferences.getInstance();
              await prefs.setString('name', 'John');
              await prefs.setBool('isStudent', true);

              // 示例:读取数据
              String name = prefs.getString('name') ?? 'No Name';
              bool isStudent = prefs.getBool('isStudent') ?? false;

              print('Name: $name, Is Student: $isStudent');
            },
            child: Text('Save & Read Data'),
          ),
        ),
      ),
    );
  }
}

运行后,可以看到一个按钮,点击后会保存一些数据到SharedPreferences中,并打印出这些数据。


功能说明

  1. 保存数据

    final prefs = await SharedPreferences.getInstance();
    await prefs.setString('name', 'John');
    await prefs.setBool('isStudent', true);
    
  2. 读取数据

    String name = prefs.getString('name') ?? 'No Name';
    bool isStudent = prefs.getBool('isStudent') ?? false;
    

更多关于Flutter本地数据存储插件flutter_ume_kit_shared_preferences的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter本地数据存储插件flutter_ume_kit_shared_preferences的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


flutter_ume_kit_shared_preferences 是一个用于调试和查看 Flutter 应用中的 SharedPreferences 数据的插件,它是 flutter_ume 生态系统的一部分。flutter_ume 是一个用于 Flutter 应用调试的工具集,提供了多种调试工具和插件。

安装

首先,你需要在 pubspec.yaml 文件中添加 flutter_ume_kit_shared_preferences 插件的依赖:

dependencies:
  flutter:
    sdk: flutter
  flutter_ume_kit_shared_preferences: ^0.1.0

然后运行 flutter pub get 来安装依赖。

使用

  1. 初始化 flutter_umeflutter_ume_kit_shared_preferences

    在你的应用的 main.dart 文件中,初始化 flutter_ume 并添加 flutter_ume_kit_shared_preferences 插件:

    import 'package:flutter/material.dart';
    import 'package:flutter_ume/flutter_ume.dart';
    import 'package:flutter_ume_kit_shared_preferences/flutter_ume_kit_shared_preferences.dart';
    
    void main() {
      WidgetsFlutterBinding.ensureInitialized();
    
      // 初始化 UME
      PluginManager.instance
        ..register(SharedPreferencesInspector());
    
      runApp(
        UMEWidget(
          enable: true, // 是否启用 UME
          child: MyApp(),
        ),
      );
    }
    
    class MyApp extends StatelessWidget {
      @override
      Widget build(BuildContext context) {
        return MaterialApp(
          title: 'Flutter Demo',
          theme: ThemeData(
            primarySwatch: Colors.blue,
          ),
          home: MyHomePage(),
        );
      }
    }
    
    class MyHomePage extends StatelessWidget {
      @override
      Widget build(BuildContext context) {
        return Scaffold(
          appBar: AppBar(
            title: Text('Flutter UME SharedPreferences Demo'),
          ),
          body: Center(
            child: Text('Hello, World!'),
          ),
        );
      }
    }
    
  2. 使用 SharedPreferences 存储数据

    你可以在应用中使用 SharedPreferences 来存储和读取数据。例如:

    import 'package:flutter/material.dart';
    import 'package:shared_preferences/shared_preferences.dart';
    
    class MyHomePage extends StatefulWidget {
      @override
      _MyHomePageState createState() => _MyHomePageState();
    }
    
    class _MyHomePageState extends State<MyHomePage> {
      String _storedValue = '';
    
      Future<void> _saveData() async {
        SharedPreferences prefs = await SharedPreferences.getInstance();
        await prefs.setString('my_key', 'Hello, SharedPreferences!');
      }
    
      Future<void> _loadData() async {
        SharedPreferences prefs = await SharedPreferences.getInstance();
        setState(() {
          _storedValue = prefs.getString('my_key') ?? 'No data found';
        });
      }
    
      @override
      Widget build(BuildContext context) {
        return Scaffold(
          appBar: AppBar(
            title: Text('Flutter UME SharedPreferences Demo'),
          ),
          body: Center(
            child: Column(
              mainAxisAlignment: MainAxisAlignment.center,
              children: <Widget>[
                Text(_storedValue),
                ElevatedButton(
                  onPressed: _saveData,
                  child: Text('Save Data'),
                ),
                ElevatedButton(
                  onPressed: _loadData,
                  child: Text('Load Data'),
                ),
              ],
            ),
          ),
        );
      }
    }
回到顶部