Packages会被发布到了 Pub包仓库.
Flutter landing 页面显示了与Flutter兼容的包(即声明依赖通常与扑兼容)。所有已发布的包都支持搜索。
要将包’css_colors’添加到应用中,请执行以下操作
有关完整示例,请参阅下面的CSS Colors example below.
如果某个软件包不适用于您的特定需求,则可以开发新的自定义package。
所有软件包都有一个版本号,在他们的pubspec.yaml文件中指定。Pub会在其名称旁边显示软件包的当前版本(例如,请参阅url_launcher软件包)以及所有先前版本的列表。
当pubspec.yaml使用速记形式添加包时,plugin1: 这被解释为plugin1: any,即可以使用任何版本的包。为了确保某个包在更新后还可以正常使用,我们建议使用以下格式之一指定版本范围:
有关更多详细信息,请参阅 Pub 版本管理指南.
当你在添加一个包后首次运行(IntelliJ中的’Packages Get’)flutter packages get,Flutter将找到包的版本保存在pubspec.lock。这确保了如果您或您的团队中的其他开发人员运行flutter packages get后回获取相同版本的包。
如果要升级到软件包的新版本,例如使用该软件包中的新功能,请运行flutter packages upgrade(在IntelliJ中点击Upgrade dependencies)。 这将根据您在pubspec.yaml中指定的版本约束下载所允许的最高可用版本。
即使未在Pub上发布,软件包也可以使用。对于不用于公开发布的专用插件,或者尚未准备好发布的软件包,可以使用其他依赖项选项:
最后,您可以使用ref参数将依赖关系固定到特定的git commit,branch或tag。有关更多详细信息,请参阅 Pub Dependencies article.
该css_colors包为CSS颜色定义颜色常量,允许您在Flutter中需要Color类型的任何位置使用它们
要使用这个包:
dependencies:替换为:
flutter:
sdk: flutter
dependencies:
flutter:
sdk: flutter
css_colors: ^1.0.0
import 'package:flutter/material.dart';
import 'package:css_colors/css_colors.dart';
void main() {
runApp(new MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
home: new DemoPage(),
);
}
}
class DemoPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Scaffold(
body: new Container(color: CSSColors.orange)
);
}
}
URL Launcher可以使您打开移动平台上的默认浏览器显示给定的URL。 它演示了软件包如何包含特定于平台的代码(我们称这些软件包为插件)。它在Android和iOS上均受支持。
使用这个插件:
dependencies:替换为:
flutter:
sdk: flutter
dependencies:
flutter:
sdk: flutter
url_launcher: ^0.4.1
import 'package:flutter/material.dart';
import 'package:url_launcher/url_launcher.dart';
void main() {
runApp(new MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
home: new DemoPage(),
);
}
}
class DemoPage extends StatelessWidget {
launchURL() {
launch('https://flutter.io');
}
@override
Widget build(BuildContext context) {
return new Scaffold(
body: new Center(
child: new RaisedButton(
onPressed: launchURL,
child: new Text('Show Flutter homepage'),
),
),
);
}
}