做自(zì)由與創造的先行者

Flutter 使用(yòng) packages

Flutter開(kāi)發手冊

使用(yòng)包

搜索packages

Packages會(huì)被發布到(dào)了(le) Pub 包倉庫.

Flutter landing 頁面 顯示了(le)與Flutter兼容的包(即聲明(míng)依賴通常與撲兼容)。所有已發布的包都支持搜索。

将包依賴項添加到(dào)應用(yòng)程序

要将包’css_colors’添加到(dào)應用(yòng)中,請(qǐng)執行以下(xià)操作(zuò)

依賴它打開(kāi) pubspec.yaml 文(wén)件,然後在dependencies下(xià)添加css_colors:

安裝它在 terminal中: 運行 flutter packages get或者在 IntelliJ中: 點擊pubspec.yaml文(wén)件頂部的’Packages Get’

導入它在您的Dart代碼中添加相應的import語句.

有關完整示例,請(qǐng)參閱下(xià)面的CSS Colors example below.

開(kāi)發新的packages

如果某個軟件包不适用(yòng)于您的特定需求,則可以開(kāi)發新的自(zì)定義package。

管理(lǐ)包依賴和(hé)版本

Package versions

所有軟件包都有一個版本号,在他(tā)們的pubspec.yaml文(wén)件中指定。Pub會(huì)在其名稱旁邊顯示軟件包的當前版本(例如,請(qǐng)參閱url_launcher軟件包)以及所有先前版本的列表。

當pubspec.yaml使用(yòng)速記形式添加包時(shí),plugin1: 這(zhè)被解釋爲plugin1: any,即可以使用(yòng)任何版本的包。爲了(le)确保某個包在更新後還可以正常使用(yòng),我們建議(yì)使用(yòng)以下(xià)格式之一指定版本範圍:

範圍限制: 指定一個最小(xiǎo)和(hé)最大(dà)的版本号,如:dependencies: url_launcher: '>=0.1.2 <0.2.0'

範圍限制使用(yòng) caret 語法: 與常規的範圍約束類似(譯者語:這(zhè)和(hé)node下(xià)npm的版本管理(lǐ)類似)dependencies: collection: '^0.1.2'

有關更多詳細信息,請(qǐng)參閱 Pub 版本管理(lǐ)指南.

更新依賴包

當你(nǐ)在添加一個包後首次運行(IntelliJ中的’Packages Get’)flutter packages get,Flutter将找到(dào)包的版本保存在pubspec.lock。這(zhè)确保了(le)如果您或您的團隊中的其他(tā)開(kāi)發人員運行flutter packages get後回獲取相同版本的包。

如果要升級到(dào)軟件包的新版本,例如使用(yòng)該軟件包中的新功能(néng),請(qǐng)運行flutter packages upgrade(在IntelliJ中點擊Upgrade dependencies)。 這(zhè)将根據您在pubspec.yaml中指定的版本約束下(xià)載所允許的最高(gāo)可用(yòng)版本。

依賴未發布的packages

即使未在Pub上(shàng)發布,軟件包也(yě)可以使用(yòng)。對(duì)于不用(yòng)于公開(kāi)發布的專用(yòng)插件,或者尚未準備好(hǎo)發布的軟件包,可以使用(yòng)其他(tā)依賴項選項:

路徑 依賴: 一個Flutter應用(yòng)可以依賴一個插件通過文(wén)件系統的path:依賴。路徑可以是相對(duì)的,也(yě)可以是絕對(duì)的。例如,要依賴位于應用(yòng)相鄰目錄中的插件’plugin1’,請(qǐng)使用(yòng)以下(xià)語法dependencies: plugin1: path: ../plugin1/

Git 依賴: 你(nǐ)也(yě)可以依賴存儲在Git倉庫中的包。如果軟件包位于倉庫的根目錄中,請(qǐng)使用(yòng)以下(xià)語法:dependencies: plugin1: git: url: git://github.com/flutter/plugin1.git

Git 依賴于文(wén)件夾中的包: 默認情況下(xià),Pub假定包位于Git存儲庫的根目錄中。如果不是這(zhè)種情況,您可以使用(yòng)path參數指定位置,例如:dependencies: package1: git: url: git://github.com/flutter/packages.git path: packages/package1

最後,您可以使用(yòng)ref參數将依賴關系固定到(dào)特定的git commit,branch或tag。有關更多詳細信息,請(qǐng)參閱 Pub Dependencies article.

例子

例子: 使用(yòng) CSS Colors package

該css_colors包爲CSS顔色定義顔色常量,允許您在Flutter中需要Color類型的任何位置使用(yòng)它們

要使用(yòng)這(zhè)個包:

創建一個名爲 ‘cssdemo’的新項目

打開(kāi) pubspec.yaml, 并将:

dependencies:

flutter:

sdk: flutter

替換爲:

dependencies:

flutter:

sdk: flutter

css_colors: ^1.0.0

在terminal中運行 flutter packages get, 或者在IntelliJ鐘(zhōng)點擊’Packages get’

打開(kāi) lib/main.dart 并替換其全部内容:

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)

);

}

}

運行應用(yòng)程序

Example: 使用(yòng)URL Launcher package to 啓動浏覽器

URL Launcher可以使您打開(kāi)移動平台上(shàng)的默認浏覽器顯示給定的URL。 它演示了(le)軟件包如何包含特定于平台的代碼(我們稱這(zhè)些(xiē)軟件包爲插件)。它在Android和(hé)iOS上(shàng)均受支持。

使用(yòng)這(zhè)個插件:

創建一個名爲’launchdemo’的新項目

打開(kāi) pubspec.yaml, 并将:

dependencies:

flutter:

sdk: flutter

替換爲:

dependencies:

flutter:

sdk: flutter

url_launcher: ^0.4.1

在terminal中運行 flutter packages get, 或者在IntelliJ鐘(zhōng)點擊’Packages get’

打開(kāi) lib/main.dart 并替換其全部内容:

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'),

),

),

);

}

}

運行應用(yòng)程序。當您點擊“Show Flutter homepage”時(shí),您應該看(kàn)到(dào)手機的默認浏覽器打開(kāi),并出現(xiàn)Flutter主頁

網站(zhàn)建設開(kāi)發|APP設計(jì)開(kāi)發|小(xiǎo)程序建設開(kāi)發
下(xià)一篇:Flutter 開(kāi)發 packages
上(shàng)一篇:Flutter 國際化