在一些项目里,你无法避免使用一些好的第三方包,以便您可以专注于应用程序的核心逻辑。
那么我今天就给大家推荐九个。
作者:坚果 华为云享专家,InfoQ签约作者,OpenHarmony布道师,,华为云享专家,阿里云专家博主,51CTO博客首席体验官,开源项目GVA成员之一,专注于大前端技术的分享,包括Flutter,鸿蒙,小程序,安卓,VUE,JavaScript。
intro_views_flutter
这是一个示例 Flutter 插件,用于在用户首次使用您的app时吸引他们,因此得名 onboarding。您可以通过管理其顶级状态以在适当的时间向用户显示该小部件,从而在您的应用程序中以任何您想要的方式实现此小部件。
特征 :
- 轻松添加页面。
- 圆形页面显示。
- 很nice的动画。
- 动画控制,如果用户在中途停止滑动。
- 跳过按钮,用于跳过应用程序介绍。
- 自定义字体选择。
img
2.path_provider:^2.0.10
用于查找文件系统上常用位置的 Flutter 插件。支持安卓、iOS、Linux、macOS 和 Windows。并非所有平台都支持所有方法。
代码语言:javascript复制Directory tempDir = await getTemporaryDirectory();
String tempPath = tempDir.path;
Directory appDocDir = await getApplicationDocumentsDirectory();
String appDocPath = appDocDir.path;
3.animations: ^2.0.2
可以轻松集成到任何 Flutter 应用程序中的精美预构建动画。
此软件包包含用于常用效果的预置动画。动画效果可以根据您的内容进行定制,并放入您的应用程序中以取悦您的用户。
4.dio
一个强大的 Dart Http 客户端,支持拦截器、全局配置、FormData、请求取消、文件下载、超时等。
代码语言:javascript复制import 'package:dio/dio.dart';
void getHttp() async {
try {
var response = await Dio().get('http://www.google.com');
print(response);
} catch (e) {
print(e);
}
}
5.hive
用纯 Dart 编写的轻量级快速键值数据库。使用 AES-256 进行强加密。
6.google_fonts
Flutter包google_fonts
允许您在 Flutter 应用程序中轻松使用?fonts.google.com提供的数千种字体中的任何一种。
7.getx
img
- GetX 是 Flutter 的一个超轻且强大的解决方案。它结合了高性能状态管理、智能依赖注入和快速实用的路由管理。
- GetX 有 3 个基本原则。
- 性能:GetX 专注于性能和最小的资源消耗。GetX 不使用 Streams 或 ChangeNotifier。
- 生产力:GetX 使用简单而愉快的语法。无论您想做什么,GetX 总有一种更简单的方法。它将节省开发时间,并提供您的应用程序可以提供的最大性能。
- 通常,开发人员应该关注从内存中删除控制器。对于 GetX,这不是必需的,因为默认情况下不使用资源时会从内存中删除它们。如果你想把它保存在内存中,你必须在你的依赖中明确声明“permanent: true”。这样,除了节省时间之外,您对内存产生不必要的依赖的风险也会降低。默认情况下,依赖加载也是惰性的。
8.购物车小部件
image-20220514111028597
代码语言:javascript复制import 'package:cart_counter/Widgets/cart_counter.dart';
import 'package:cart_counter/cart_counter.dart';
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
title: 'Cart Counter',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: HomePage());
}
}
class HomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Container(
height: double.infinity,
child: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Container(
width: 150,
child: CartCounter(
maximumValue: 10,
minimumValue: 3,
value: 3,
style: TextStyle(
color: Colors.red,
fontSize: 30,
fontWeight: FontWeight.bold),
onChanged: (val) {
//here in val variable you'll get updated counter value.
print(val);
},
),
),
],
),
),
));
}
}
9.互联网连接检查器
这个插件允许 Flutter 应用程序发现网络连接并进行相应的配置。它可以区分蜂窝连接和 WiFi 连接。
代码语言:javascript复制import 'package:connectivity_plus/connectivity_plus.dart';
var connectivityResult = await (Connectivity().checkConnectivity());
if (connectivityResult == ConnectivityResult.mobile) {
// I am connected to a mobile network.
} else if (connectivityResult == ConnectivityResult.wifi) {
// I am connected to a wifi network.
}
以上就是我推荐的九个包,不知道大家喜欢不,喜欢的话,不妨给本文点点赞,支持一下。