在本文中,我们将讨论20个最有用和最常用的库,许多开发人员都喜欢它们,如果你从事flutter的开发工作,你应该知道这一点。而所有这些都支持安卓和IOS系统。
1 . Google Map
目前大多数应用程序都需要谷歌Maps,这个库为您提供了谷歌Maps应用程序中需要的许多服务。甚至你也可以用自己的方式定制。
GoogleMap(
mapType: MapType.hybrid,
initialCameraPosition: _kGooglePlex,
onMapCreated: (GoogleMapController controller) {
_controller.complete(controller);
},
),
2 .url_launcher
这个库支持您启动URL到您的web浏览器,他们也支持启动您的本机模式URL,如电话,短信,电子邮件等。
_launchURL() async {
const url = 'https://flutter.dev’;
if (await canLaunch(url)) {
await launch(url);
} else {
throw 'Could not launch $url’;
}
}
3 .Firebase packages (FlutterFire)
这不是一个单独的,它是一组集合库,firebase支持您的flutter应用程序。
我们在应用程序中使用 firebase 来实现多种不同的方法,例如消息传递、数据库等。
因此,在这里你可以根据你的要求找到所有这些东西,它为此单独提供了一个库。
4 .Provider
状态管理是我们应用程序的重要组成部分,Provider 在我们当前需要的地方提供当前的数据模型。
Provider是 InheritedWidget 的包装器,可以使用更少的样板代码更轻松地使用。
Provider 是最基本的 Provider widget类型。您可以使用它为widget树中的任何位置提供值(通常是数据模型对象)。但是,当该值更改时,它不会帮助您更新widget树。
5 .Bloc
这也是一个状态管理库。Bloc(Business Logic Component)设计模式,这是一种类似于MVVM模式的东西。
Bloc widget是你实现所有业务逻辑所需的基本组件。要使用它,请扩展Bloc类并重写 mapEventToState 和 initialState 方法。
6 .Getx
它也是一个状态管理库。GetX 提供了状态管理、依赖注入和路由管理解决方案的组合,可以很好地协同工作。
GetX 是 Flutter 的一个超轻且强大的解决方案。它快速实用地结合了高性能状态管理、智能依赖注入和路由管理。
7 .ReduX
Redux for Dart 将泛型用于类型化状态。它包含丰富的文档、中间件、开发工具生态系统,并且可以使用 flutter_redux 包与 Flutter 结合。
8 .Rxdart
RxDart 是 Dart 语言的反应式函数式编程库,基于 ReactiveX。
它也是一个状态管理解决方案库。
9 .Location
它在位置改变时提供回调。我们可以轻松地在地图和其他使用中管理我们的应用程序,我们需要当前位置,如果用户位置发生变化,那么我们的应用程序会实时更新,而无需一次又一次地调用函数。
10 .Device_info
我们可以从 Flutter 应用程序中获取当前设备信息。这意味着他们提供了您的设备相关信息,如操作系统版本、名称等。
11 .Sqflite
它提供了本地数据库存储,就像我们在 Android 中使用 Sqlite 一样。
它主要用于本地存储,为大型表格的创建和存储提供解决方案。
12 .Cached network image
一个flutter库,用于显示来自互联网的图像,并将其保存在缓存目录中。
这个库的主要用途是你只能加载一次图像,之后这个库将它保存在缓存中。所以你不需要一次又一次地加载。
13 .SharedPreferences
Shared Preferences 用于在本地存储数据键值对,而无需进行太多代码结构或表创建。
如果你知道android的Shared-preferences,那么你会看到这个库是一样的。
14 .Intl
这个软件包提供了国际化和本地化设施,包括消息翻译、数字和性别、日期/数字格式化和解析,以及双向文本。
15 .Path provider
一个Flutter插件,用于查找文件系统上的常用位置。支持iOS、Android、Linux和macOS。并非所有平台都支持所有方法。
16 .Google fonts
Flutter 的 google_fonts 包允许您在 Flutter 应用程序中轻松使用来自 fonts.google.com 的 977 种字体(及其变体)中的任何一种。
17 .charts_flutter
这个插件在您的flutter项目中提供各种类型的图表结构,如条形图、线形图、圆形图等。
18 .Package info
这个Flutter插件用于查询有关应用程序包的信息,如iOS上的CFBundleVersion或Android上的versionCode。
插件提供有关设备(品牌、型号等)的详细信息,以及运行应用程序的 Android 或 iOS 版本。
19 .Share
这个Flutter插件用于通过平台共享UI来分享内容,在Android上使用ACTION_SEND意图,在iOS上使用UIActivityViewController。
20 .Dio
dio 插件是 Dart 的一个强大的 HTTP 客户端,支持拦截器、FormData、请求取消、文件下载、超时等。