如何在 Flutter 中使用 json 或其他内容保存我当前的状态
Posted
技术标签:
【中文标题】如何在 Flutter 中使用 json 或其他内容保存我当前的状态【英文标题】:How to save my current state by using json or something else in Flutter 【发布时间】:2019-12-23 17:25:47 【问题描述】:我想知道如何通过修改现有的 JSON 文件来保存我当前的状态。但是我找不到保存的方法......所以我想问你。
JSON 文件的大小不是很大。所以我在调用加载和保存状态时考虑了总加载和总保存。但我认为它效率不高且不稳定......所以我可以得到一些帮助吗?
【问题讨论】:
【参考方案1】:请使用这个包https://pub.dev/packages/shared_preferences 包装 NSUserDefaults(在 ios 上)和 SharedPreferences(在 android 上),为简单数据提供持久存储。数据异步保存到磁盘
示例代码
import 'package:flutter/material.dart';
import 'package:shared_preferences/shared_preferences.dart';
void main()
runApp(MaterialApp(
home: Scaffold(
body: Center(
child: RaisedButton(
onPressed: _incrementCounter,
child: Text('Increment Counter'),
),
),
),
));
_incrementCounter() async
SharedPreferences prefs = await SharedPreferences.getInstance();
int counter = (prefs.getInt('counter') ?? 0) + 1;
print('Pressed $counter times.');
await prefs.setInt('counter', counter);
【讨论】:
以上是关于如何在 Flutter 中使用 json 或其他内容保存我当前的状态的主要内容,如果未能解决你的问题,请参考以下文章
我们如何在 Flutter 中为集成测试生成 json 报告?
如何在flutter中使用mysql数据库(或json)中的sharedpreferences键选择以列出最喜欢的记录?
本文将向您展示如何在 Flutter 中编码/解码 JSON
如何编写像json_serializable这样的flutter构建器
如何使用 buildArguments 或其他任何东西在 Flutter/FirebaseAnimatedList 中查询? (请举例)