A new Flutter application.
This project is a starting point for a Flutter application.
A few resources to get you started if this is your first Flutter project:
For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.
项目结构:
lib: 项目内容 01_counter: 简单计算器,入门案例 02_route: 路由案例 flutter_app1.iml: 项目路径配置 pubspec.yaml: 包管理依赖 question.yaml: 问题参见
安装 java 环境 java jdk 配置Android 环境变量
安装android studio 下载 android sdk 下载 dart & flutter 插件
安装flutter-sdk
flutter run ./lib/01_counter/app.dart
打包:
keytool -genkey -v -keystore path/key.jks -keyalg RSA -keysize 2048 -validity
/android/key.properties
storePassword= # 创建 key.jks 时,输入的密码
keyPassword= # 同上
keyAlias=key # 昵称
storeFile=C:\Users\asus\key.jks # 生成的 key.jks 的路径
/android/app/build.gradle
在 android{ …… } 配置之前,加入读取 key.properties 的代码 def keystorePropertiesFile = rootProject.file("key.properties") def keystoreProperties = new Properties() keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
android {
将
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.debug
}
}
替换为
signingConfigs {
release {
# 设置签名信息
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
}
}
buildTypes {
release {
signingConfig signingConfigs.release # 使用 release 配置
}
}
运行flutter build apk (flutter build 默认会包含 --release选项).
打包好的发布APK位于/build/app/outputs/apk/app-release.apk。