我正在尝试创建一个纯Dart程序包,以在我的Flutter应用程序中使用。问题是,在构建我的应用程序时,库文件夹下会生成一些特定于Android和iOS的文件。我想知道这是错误还是已知功能?
我已经使用以下命令创建了项目:
flutter create -t package mypackage
例如,生成的文件GeneratedPluginRegistrant.java如下所示:
package io.flutter.plugins;
import io.flutter.plugin.common.PluginRegistry;
/**
* Generated file. Do not edit.
*/
public final class GeneratedPluginRegistrant {
public static void registerWith(PluginRegistry registry) {
if (alreadyRegisteredWith(registry)) {
return;
}
}
private static boolean alreadyRegisteredWith(PluginRegistry registry) {
final String key = GeneratedPluginRegistrant.class.getCanonicalName();
if (registry.hasPlugin(key)) {
return true;
}
registry.registrarFor(key);
return false;
}
}
我可以避免生成那些GeneratedPluginRegistrant。*文件吗?如果没有,我是否必须将它们提交给源代码管理?
答案 0 :(得分:1)
对于纯飞镖包,您只需要一件事情:pubspec.yaml
,并具有名称和环境限制:
name: my_package
environment:
sdk: ">=2.0.0 <3.0.0"
这足以将my_package
添加为flutter项目的依赖项:
dependencies:
my_package:
path: ../path/to/my_package/folder
答案 1 :(得分:1)
您可以通过命令行进行操作:
pub
的路径应在您的环境变量中设置,例如:
C:\ Users \ UserName \ AppData \ Roaming \ Pub \ Cache \ bin;
pub global activate stagehand
mkdir dart_project
cd dart_project
stagehand package-simple
使用命令行生成它会为您生成一些代码,这将使您了解如何管理软件包。
您可以将此项目用作Flutter或Angular-Dart项目的pubspec.yaml文件中的依赖项,如下所示:
dependencies:
dart_project:
path: ../path/to/dart_project