一、创建项目
在创建 Flutter 项目时,使用 flutter create
命令可以根据项目需求灵活选择参数。下面是一个业界主流配置值的参考,适用于大多数常规 Flutter 项目。
业界主流配置值示例:
# 配置国内地址 export PUB_HOSTED_URL="https://pub.flutter-io.cn" export FLUTTER_STORAGE_BASE_URL="https://storage.flutter-io.cn" flutter create \ --org com.yourcompany \ --ios-language swift \ --android-language kotlin \ --description "A Flutter project for mobile app development" \ --template=app \ --project-name my_flutter_app \ --platforms android,ios,web \ --pub \ --verbose \ my_flutter_app
参数的主流配置值解释:
--org com.yourcompany
- 主流值:
com.yourcompany
- 说明:使用反向域名格式来命名组织名。通常使用公司或个人的域名(例如
com.google
,com.mycompany
)。 - 原因:在 Android 和 iOS 项目中,包名需要唯一,反向域名格式是业界推荐的做法。
- 主流值:
--ios-language swift
- 主流值:
swift
- 说明:iOS 项目使用的语言现代化且符合主流开发趋势。
- 原因:Swift 是当前苹果平台的主流开发语言,且具有更好的性能和更现代的语法。Objective-C 在新项目中逐渐不推荐使用。
- 主流值:
--android-language kotlin
- 主流值:
kotlin
- 说明:Android 项目使用的语言推荐使用 Kotlin,而非 Java。
- 原因:Kotlin 是官方推荐的 Android 开发语言,并且它具有更现代化的语法,且与 Java 兼容性好。
- 主流值:
--description "A Flutter project for mobile app development"
- 主流值:
"A Flutter project for mobile app development"
- 说明:描述信息可以自定义,通常描述项目用途。
- 原因:项目描述有助于团队和开发者快速了解项目的用途。
- 主流值:
--template=app
- 主流值:
app
- 说明:项目类型,创建一个 Flutter 应用。
- 原因:
app
是最常见的 Flutter 项目模板,适用于大多数开发场景。plugin
和package
更适合开发插件或包。
- 主流值:
--project-name my_flutter_app
- 主流值:
my_flutter_app
- 说明:指定项目名称。
- 原因:项目名称是标识和组织项目的基础,通常与文件夹名称一致。建议使用有意义且易于记忆的项目名称。
- 主流值:
--platforms android,ios,web
- 主流值:
android,ios,web
- 说明:指定支持的平台。当前大多数 Flutter 项目支持 Android、iOS 和 Web。
- 原因:Flutter 支持跨平台开发,建议支持至少 Android 和 iOS。如果你有 Web 需求,可以选择 Web 支持。
- 主流值:
--pub
- 主流值:
--pub
- 说明:创建项目后自动执行
flutter pub get
,下载依赖项。 - 原因:自动运行
flutter pub get
可以确保项目的依赖包在项目创建后立即可用。
- 主流值:
--verbose
- 主流值:
--verbose
- 说明:输出详细的日志信息,帮助调试和诊断问题。
- 原因:
--verbose
选项在项目创建或执行过程中遇到问题时,能提供详细的调试信息,方便开发者查找和解决问题。
- 主流值:
其他常用参数(根据需求可选)
--offline
- 主流值:
--offline
(根据网络情况选择) - 说明:创建项目时不连接网络,使用本地缓存的依赖。
- 使用场景:当网络不稳定或无法联网时,可以使用该选项。
- 主流值:
--no-pub
- 主流值:
--no-pub
(通常不使用,除非有特殊需求) - 说明:创建项目后不自动运行
flutter pub get
。 - 使用场景:如果你想手动控制何时获取依赖,或者你要自定义依赖配置时,可以选择此选项。
- 主流值:
--template=plugin
- 主流值:
--template=plugin
(适用于开发 Flutter 插件) - 说明:如果你要开发一个 Flutter 插件而非普通应用,可以使用此选项。
- 使用场景:当你打算为 Flutter 创建原生功能时,选择
plugin
模板。
- 主流值:
总结:
对于大多数开发者来说,以下配置值是最常见的:
flutter create \ --org com.yourcompany \ --ios-language swift \ --android-language kotlin \ --template=app \ --platforms android,ios,web \ --pub \ my_flutter_app
这套配置能生成一个跨平台、支持 Android 和 iOS 的 Flutter 项目,使用 Kotlin 和 Swift 作为 Android 和 iOS 的开发语言,且支持 Web 平台。
二、项目调整
检查 build.gradle
配置 确保在 android/build.gradle
文件中有如下配置:
allprojects { repositories { google() mavenCentral() maven { url 'https://storage.googleapis.com/download.flutter.io' } } }
然后执行:
./gradlew --refresh-dependencies