在一些项目里,你无法避免使用一些好的第三方包,以便您可以专注于应用程序的核心逻辑。
那么我今天就给大家推荐九个。
作者:坚果 华为云享专家,InfoQ签约作者,OpenHarmony布道师,,华为云享专家,阿里云专家博主,51CTO博客首席体验官,开源项目GVA成员之一,专注于大前端技术的分享,包括Flutter,鸿蒙,小程序,安卓,VUE,JavaScript。
这是一个示例 Flutter 插件,用于在用户首次使用您的app时吸引他们,因此得名 onboarding。您可以通过管理其顶级状态以在适当的时间向用户显示该小部件,从而在您的应用程序中以任何您想要的方式实现此小部件。
特征 :
img
用于查找文件系统上常用位置的 Flutter 插件。支持安卓、iOS、Linux、macOS 和 Windows。并非所有平台都支持所有方法。
Directory tempDir = await getTemporaryDirectory();
String tempPath = tempDir.path;
Directory appDocDir = await getApplicationDocumentsDirectory();
String appDocPath = appDocDir.path;
可以轻松集成到任何 Flutter 应用程序中的精美预构建动画。
此软件包包含用于常用效果的预置动画。动画效果可以根据您的内容进行定制,并放入您的应用程序中以取悦您的用户。
一个强大的 Dart Http 客户端,支持拦截器、全局配置、FormData、请求取消、文件下载、超时等。
import 'package:dio/dio.dart';
void getHttp() async {
try {
var response = await Dio().get('http://www.google.com');
print(response);
} catch (e) {
print(e);
}
}
用纯 Dart 编写的轻量级快速键值数据库。使用 AES-256 进行强加密。
Flutter包google_fonts
允许您在 Flutter 应用程序中轻松使用?fonts.google.com提供的数千种字体中的任何一种。
img
image-20220514111028597
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);
},
),
),
],
),
),
));
}
}
这个插件允许 Flutter 应用程序发现网络连接并进行相应的配置。它可以区分蜂窝连接和 WiFi 连接。
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.
}
以上就是我推荐的九个包,不知道大家喜欢不,喜欢的话,不妨给本文点点赞,支持一下。