一、确认 flutter
插件镜像地址
-
指令
$ flutter doctor -v
[✓] Flutter (Channel stable, 3.24.5, on macOS 13.5.2 22G91 darwin-arm64, locale zh-Hans-CN) • Flutter version 3.24.5 on channel stable at /Users/dengzemiao/Desktop/Project/flutter/Flutter/flutter • Upstream repository https://github.com/flutter/flutter.git • Framework revision dec2ee5c1f (3 个月前), 2024-11-13 11:13:06 -0800 • Engine revision a18df97ca5 • Dart version 3.5.4 • DevTools version 2.37.3 • Pub download mirror https://pub.flutter-io.cn • Flutter download mirror https://storage.flutter-io.cn
-
Pub download mirror
-
作用:这是针对 Dart 包管理工具 Pub 的镜像源。
-
用途:当在 Flutter 项目中运行
flutter pub get
或者dart pub get
时,Pub 会从这个镜像下载你项目中所需的 Dart 包(如第三方库)。 -
该镜像源主要是为了加速 Dart 包的下载。
-
例子:使用了
http
、provider
等库,flutter pub get
就会从Pub download mirror
获取这些包。
-
Flutter download mirror
- 作用:这是针对 Flutter SDK 和其组件的镜像源。
- 用途:当运行 Flutter 命令时(如
flutter upgrade
或下载 SDK 更新),或者在新安装时,它会从这个镜像源下载 Flutter SDK 和相关工具链(如编译器、构建工具等)。 - 该镜像源主要是为了加速 Flutter SDK 和工具链的下载。
- 例子:当运行
flutter doctor
或flutter upgrade
时,它会从Flutter download mirror
获取 SDK 更新。
总结:
Pub download mirror
:用于下载 Dart 包,加速第三方库的获取。Flutter download mirror
:用于下载 Flutter SDK 和其工具链,帮助加速 Flutter 相关资源的下载。
-
-
看这行
Pub download mirror https://pub.flutter-io.cn
表示当前配置的 Dart 包管理器(Pub)的镜像地址是
https://pub.flutter-io.cn
,这是国内的镜像源,替代了官方的https://pub.dev
,目的是加速包的下载。 -
其他配置:
- Flutter download mirror:是
Flutter SDK
下载时使用的镜像地址,当前配置的是https://storage.flutter-io.cn
,也就是国内镜像源,替代了官方的https://storage.googleapis.com
。
- Flutter download mirror:是
二、找到安装的插件原始工程
Flutter
插件通常存储在项目中的 pubspec.yaml
文件指定的依赖部分。当通过 flutter pub get
安装插件时,Flutter
会将插件存储在本地缓存中,具体位置如下:
-
macOS/Linux:
~/.pub-cache/hosted/
使用的什么镜像就到
~/.pub-cache/hosted/
目录下的哪个镜像文件夹中去找对应的插件以及版本,拷贝出来即可。例如~/.pub-cache/hosted/pub.dev/插件
、~/.pub-cache/hosted/pub.flutter-io.cn/插件
,本地镜像是pub.flutter-io.cn
就去pub.flutter-io.cn
文件夹中找。 -
Windows:
C:\Users<YourUsername>\AppData\Local\Pub\Cache\hosted
三、使用本地插件
-
将插件工程拷贝出来到任意文件存储
-
在
pubspec.yaml
中使用# 原来是这样的 dependencies: flutter_qiyu: ^0.1.2 # 调整后,两者运行结果是一样的,但是这样可以调整插件工程的配置,有些插件必须要这样调整 dependencies: flutter_qiyu: # 绝对路径(不推荐) # path: /Users/dengzemiao/Desktop/flutter_qiyu-0.1.2 # 相对路径(放到项目根目录) path: ./exlib/flutter_qiyu-0.1.2
重新
$ flutter clean
+$ flutter pub get
+$ flutter run
运行项目。