Flutter开发09-常用的第三方库

常用组件

官方插件

https://github.com/flutter/plugins

下拉刷新

Github地址:flutter_easyrefresh

简书https://www.jianshu.com/p/af0b1e3fb044

在 pubspec.yaml 中添加依赖

1
2
3
//pub方式
dependencies:
flutter_easyrefresh: ^2.1.1

网络请求

Github网址

添加依赖

1
2
dependencies:
dio: ^3.0.9

日志打印

添加依赖

1
2
dependencies:
logger: ^0.9.1

调用方式

1
2
3
4
import 'package:logger/logger.dart';

final logger = Logger();
logger.i("123456");

本地存储插件

地址:https://pub.dev/packages/shared_preferences

添加依赖

1
2
dependencies:
shared_preferences: ^0.5.7

调用方式

1
2
3
4
5
6
7
import 'package:shared_preferences/shared_preferences.dart';
_incrementCounter() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
int counter = (prefs.getInt('counter') ?? 0) + 1;
print('Pressed $counter times.');
await prefs.setInt('counter', counter);
}

用户存储与获取

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void saveLoginUser(LoginUser user) async {
SharedPreferences prefs = await SharedPreferences.getInstance();
var loginUserStr = json.encode(user);
await prefs.setString("loginUser", loginUserStr);
}

Future<LoginUser> getLoginUser() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
var loginUserStr = prefs.getString('loginUser');
if (loginUserStr != null) {
return LoginUser.fromJson(json.decode(loginUserStr));
} else {
return null;
}
}