FLUTTER ECOSYSTEM

edumigueis/flutter_session_manager

易于使用的会话包装器,为 Flutter 添加了会话存储和管理支持。

flutter_session_manager 项目封面
Stars
3
Forks
0
最近推送(UTC)
2021年11月12日
项目状态
未归档
Eduardo Migueis GitHub avatar
GITHUB User

Eduardo Migueis ↗

Computer science undergraduate at Unicamp | Data Engineer

@ciandtBrazil
语言Dart

技术话题

此仓库发布的插件

使用的依赖

依赖清单 4 项

原始 README

以下为英文项目原文快照,最新内容请访问 GitHub。

展开 / 收起项目 README

flutter_session_manager

Adds an easy to use wrapper to session management in flutter. Allows for easy session storage and management. The session persists in the app's' lifetime.

Store values in the session:
await SessionManager().set("key", value);

or

var sessionManager = SessionManager();
await sessionManager.set("name", "cool user");
await sessionManager.set("id", 3);
await sessionManager.set("measure", 23.2);
await sessionManager.set("isLoggedIn", true);
await sessionManager.set("user", new User(id: 1, name: "John", isCool: true, postCount: 4));
Read values from the session:
dynamic id = await SessionManager().get("id");
Saving objects:

To save objects, the class must have the toJson() method. When getting a object, it returns as a Json that you can Serialize using fromJson() method.

class User {
  final int id;
  final String name;
  final bool isCool;
  final int postCount;

  User({this.id, this.name, this.isCool, this.postCount});

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> user = Map<String, dynamic>();
    user["id"] = id;
    user["name"] = this.name;
    user["isCool"] = this.isCool;
    user["postCount"] = this.postCount;
    return user;
  }
}

User user = User(id: 1, name: "John", isCool: true, postCount: 4);
await SessionManager().set('user', user);
User u = User.fromJson(await SessionManager().get("user"));
Session Management:

This package contains all operations that may be necessary to manage a session.

  • Update session
await SessionManager().update();
  • Delete session and all data in it
await SessionManager().destroy();
  • Remove a specific item
await SessionManager().remove("id");
  • Verify wether or not a key exists
await SessionManager().containsKey("id"); // true or false

Getting Started

With Flutter, run:

 $ flutter pub add flutter_session_manager

This will add a line like this to your package's pubspec.yaml (and run an implicit flutter pub get):

 dependencies:
  flutter_session_manager: ^1.0.1

To import it in your Dart code, you can use:

import 'package:flutter_session_manager/flutter_session_manager.dart';

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create.

  1. Fork the Project

  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)

  3. Commit your Changes (git commit -m 'Add some AmazingFeature')

  4. Push to the Branch (git push origin feature/AmazingFeature)

  5. Open a Pull Request

License

Distributed under the MIT License. See LICENSE for more information.

Copyright (c) Eduardo Migueis 2021.