个性化阅读
专注于IT技术分析

Flutter包package

程序包是一个命名空间, 其中包含一组相似类型的类, 接口和子程序包。我们可以认为包类似于计算机上的不同文件夹, 其中我们可以将电影保存在一个文件夹中, 将图像保存在另一个文件夹中, 将软件保存在另一个文件夹中, 等等。在Flutter中, Dart通过一个包来组织和共享一组功能。 Flutter始终支持共享软件包, 这是其他开发人员为Flutter and Dart生态系统贡献的。这些软件包使我们能够构建应用程序, 而不必从头开始开发所有内容。

该包的一般结构如下所示(将演示包假定为mycustom_package):

lib / src / *:它包含私有Dart代码文件。

lib / mydemo_package.dart:这是Dart主代码文件。我们可以将其导入到应用程序中, 如下所示:

import 'package:mycustom_package/mycustom_package.dart'

我们还可以按照以下语法将任何其他代码文件导出到主代码文件中:

Export src/my_code.dart

lib / *:这是一个目录, 其中包含程序包中的公共代码。我们可以按以下方式访问此代码:

import 'package:mydemo_package/sub_folder/custom_file.dart'

pubspec.yaml:这是项目的配置文件, 在处理Flutter项目期间将使用很多。该文件包含:

  • 项目常规设置, 例如项目的名称, 描述和版本。
  • 项目依赖项。
  • 项目资产(例如图片)。

包装类型

根据功能, 我们可以将包分为两种类型:

  1. 飞镖包
  2. 插件包

Dart程序包:这是一个通用程序包, 它以dart语言编写, 例如path程序包。该软件包可以在Web或移动平台这两种环境中使用。它还包含某些Flutter特定功能, 因此依赖Flutter框架, 例如fluro软件包。

插件程序包:这是一个专用的Dart程序包, 包括以Dart代码编写的API, 并且取决于Flutter框架。可以将其与针对特定平台的特定平台实现相结合, 例如Android(使用Java或Kotlin)和iOS(使用Objective C或Swift)。该软件包的示例是电池和图像选择器插件软件包。

开发Flutter软件包或插件

开发Flutter插件或程序包类似于创建Dart应用程序或Dart程序包。但是, 它有一些例外, 表示插件始终使用特定于平台(例如Android或iOS)的系统API来获取所需的功能。现在, 让我们逐步了解如何在Flutter中开发软件包。

步骤1:首先, 打开Android Studio, 然后点击文件菜单->选择新的Flutter项目。屏幕上将出现一个对话框。

Flutter包

步骤2:在此对话框中, 你需要选择一个New Flutter Project选项, 如下图所示, 然后单击Next。

Flutter包

步骤3:在下一个对话框中, 输入包的所有详细信息, 例如项目名称, 项目位置和项目描述。填写所有详细信息后, 单击完成。

Flutter包

步骤4:最后, 创建你的项目。现在, 打开flutter_custom_package.dart文件, 并删除在创建项目时创建的默认代码。然后插入以下代码。此代码段创建一个警报框包。

library flutter_custom_package;

import 'package:flutter/material.dart';

class CustomPackageAlertBox {
  static Future showCustomAlertBox({
    @required BuildContext context, @required Widget willDisplayWidget, }) {
    assert(context != null, "If context is null!!");
    assert(willDisplayWidget != null, "If willDisplayWidget is null!!");
    return showDialog(
        context: context, builder: (context) {
          return AlertDialog(
            shape: RoundedRectangleBorder(
              borderRadius: BorderRadius.all(Radius.circular(20)), ), content: Column(
              mainAxisSize: MainAxisSize.min, children: <Widget>[
                willDisplayWidget, MaterialButton(
                  color: Colors.white70, child: Text('Close Alert'), onPressed: () {
                    Navigator.of(context).pop();
                  }, )
              ], ), elevation: 12, );
        });
  }
}

现在, 你需要测试新创建的程序包。要测试包, 请创建一个新项目。在此项目中, 首先, 在依赖项部分中打开pubspec.yaml文件和以下代码。

dependencies: 
   flutter: 
      sdk: flutter 
   flutter_custom_package: 
      path: ../

当你在pubspec.yaml文件中添加自定义程序包时, Android Studio会提醒你更新此文件。要更新文件, 请单击“获取依赖项”, 并确保在文件更新过程中已建立Internet连接。 Android Studio会自动从互联网获取软件包并为你的应用程序进行配置。现在, 你可以使用此程序包了。你可以将包导入到dart文件中, 如下所示:

import 'package: flutter_custom_package/flutter_custom_package.dart';

如何发布程序包

成功实现包后, 可以将其发布在pub.dev上, 以便任何人都可以在项目中轻松使用它。

发布软件包之前, 请确保pubspec.yaml, README.md和CHANGELOG.md文件的内容完整且正确。

接下来, 在终端窗口中运行以下命令以分析软件包的每个阶段。

$ flutter pub publish --dry-run

最后, 你需要运行以下命令来发布程序包。

$ flutter pub publish

赞(0)
未经允许不得转载:srcmini » Flutter包package

评论 抢沙发

评论前必须登录!