Flutter 常用三方库收集

一、前言

在平时的开发中,三方库的使用是少不了的,这里收集了一些自己平时开发中会使用的三方库,方便查阅与学习

二、三方库

1、网络请求

  • dio
    一个强大的Dart Http请求库,支持Restful API、FormData、拦截器、请求取消、Cookie管理、文件上传/下载、超时、自定义适配器等...

2、数据存储

  • shared_preferences
    简单的,异步的,持久化的key-value存储系统, 在Android上它是基于SharedPreferences的,在iOS上它是基于NSUserDefaults

3、屏幕适配

  • flutter_screenutil
    flutter 屏幕适配方案,让你的UI在不同尺寸的屏幕上都能显示合理的布局!

4、动画库

  • flutter_spinkit
    支持各种动画,可用来做加载动画等

5、条形码-二维码扫描

  • barcode_scan
    支持iOS、android两端的条码-二维码扫描库

6、下拉加载上拉加载更多

  • pull_to_refresh
    很强大的一个库,可以实现多种效果,强烈建议
  • loadmore
    ListView上拉加载更多,挺好用的

7、基本信息获取

  • PackageInfo
    用来获取应用名称、版本号等基本信息

8、webView网页加载

  • flutter_webview_plugin
    用来进行网页加载

9、国际化

flutter i18n 插件使用,快捷键 alt+enter 可快速替换文字

10、版本更新

  • ota_update
    支持Android应用内下载,实现应用内更新功能
    具体使用可参考Flutter 应用内App版本更新
  • url_launcher
    网页打开工具,适用于iOS版本更新,可以打开应用地址,跳转AppStore更新
// 部分代码

import 'dart:io';
import 'package:url_launcher/url_launcher.dart';
import 'package:ota_update/ota_update.dart';

void updateVersionAction() async {
    if (Platform.isIOS) {
      const String url = 'https://itunes.apple.com/cn/app/idxxxxxx?mt=8';
      if (await canLaunch(url)) {
        await launch(url);
      } else {
        throw 'Could not launch $url';
      }
    } else if (Platform.isAndroid) {
      const String url = "http://thinkerx.oss-cn-qingdao.aliyuncs.com/mobile/android/xxxx.apk";
    try {
      OtaUpdate().execute(url).listen(
            (OtaEvent event) {
          print('EVENT: ${event.status} : ${event.value}');
        },
      );
    } catch (e) {
      Fluttertoast.showToast(msg: '更新失败,请稍后再试');
    }
    }
  }

11、权限

  • permission_handle
    权限管理,可用来检测权限是否获取等

12、视频封面图获取

  • video_thumbnail
    可以获取本地和网络视频的封面图
final uint8list = await VideoThumbnail.thumbnailData(
  video: videofile.path,
  imageFormat: ImageFormat.JPEG,
  maxWidth: 128, // specify the width of the thumbnail, let the height auto-scaled to keep the source aspect ratio
  quality: 25,
);

13、状态、路由管理

  • getx
    GetX 是 Flutter 上的一个轻量且强大的解决方案:高性能的状态管理、智能的依赖注入和便捷的路由管理。

三、其他

1、忽略文件(.gitignore)

Flutter 在git管理时会有很多无需追踪的文件,这时候就需要在忽略文件里将他们忽略掉,初次创建项目时创建忽略文件方法如下,如果已经上传过项目,需特殊处理下,具体参考这里

cd 项目路径
touch .gitignore
open .gitignore

具体忽略内容参考官方地址.gitignore

你可能感兴趣的:(Flutter 常用三方库收集)