惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
云风的 BLOG
云风的 BLOG
B
Blog
博客园 - Franky
I
InfoQ
A
About on SuperTechFans
博客园_首页
L
LangChain Blog
量子位
腾讯CDC
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
美团技术团队
V
V2EX
Apple Machine Learning Research
Apple Machine Learning Research
雷峰网
雷峰网
MongoDB | Blog
MongoDB | Blog
Microsoft Azure Blog
Microsoft Azure Blog
月光博客
月光博客
T
The Blog of Author Tim Ferriss
P
Proofpoint News Feed
G
Google Developers Blog
Last Week in AI
Last Week in AI

繁星点点

最新轻量级龙虾部署教程 通过netboot.xyz重装系统 giffgaff卡保号教程 Llinux系统中全新透明代理方案(可代理所有出站流量) tailscale开启子网路由常见的坑 OpenWrt固件编译 解决UFW和Docker的问题 使用PGP的非对称算法加密文件 NSSM工具把任意exe程序注册为Windows后台服务 轻量级简约端口转发rinetd 安卓IDE的安装和使用 IP信息查询网站汇总 热点共享代理教程 SSH使用密钥认证登录详细解释 Debian系统公网IP出口切换指南,适用多IP服务器 Windows系统安装Scoop包管理器 使用手机搭建节点服务端 关于github提交记录泄露真实邮箱的处理办法 anytls协议部署教程 caddy给域名用上ECH加密 通过gitlab流水线自动备份仓库 通过CF-Workers代理访问网站 低配机器使用alpine系统跑docker 端口敲门教程 3x-ui面板通过api管理示例 nmap端口扫描 数据库常用命令 snap和winget包管理器 Git推送GitHub常用命令 😩😩😩学不完,根本学不完😩😩😩
安卓Flutter开发学习笔记
2025-06-07 · via 繁星点点

Windows 系统手动安装 Flutter 环境

✅ 一、准备条件

安卓sdk:

Image


✅ 二、安装 Flutter SDK

1. 下载 Flutter

2. 解压

解压到路径,例如:

C:\flutter

3. 配置环境变量

将以下路径添加到系统环境变量 Path 中:

[Environment]::SetEnvironmentVariable("Path", $env:Path + ";C:\flutter\bin", "Machine")

然后重启终端(powershell)。

✅ 三、验证安装

flutter doctor --android-licenses

一路输入y直到完成

检查是否识别出所有组件并显示 ✅。


✅ 四、创建和构建项目

1. 创建多平台项目

flutter create myapp --org io.github.name --platforms android,ios,windows,macos,linux

2. 构建 APK

flutter build apk --release

输出文件路径:

build\app\outputs\flutter-apk\app-release.apk

Flutter 常用命令

命令 说明
flutter doctor -v 检查 Flutter 开发环境
flutter doctor --android-licenses 接受 Android SDK 许可证
flutter config --enable-windows-desktop 启用 Windows 桌面支持
flutter devices 查看已连接设备
flutter emulators 查看模拟器列表
flutter create myapp 创建 Flutter 项目
flutter create . 为当前项目补充缺失平台目录
flutter pub get 下载项目依赖
flutter pub upgrade 升级依赖
flutter pub outdated 检查可升级依赖
flutter clean 清理构建缓存
flutter run 运行项目
flutter run -d chrome 在 Chrome 中运行
flutter run -d windows 在 Windows 桌面运行
flutter run -d android 在 Android 设备运行
flutter run --release Release 模式运行
flutter build apk 构建 APK
flutter build appbundle 构建 AAB
flutter build windows 构建 Windows 程序
flutter build apk --release 构建 Release APK
flutter build apk --split-per-abi 按 ABI 拆分 APK
flutter test 运行单元测试
flutter analyze 静态代码检查
flutter format . 格式化代码
flutter --version 查看版本

Docker构建安卓项目参考

services:
  android:
    image: mingc/android-build-box
    container_name: android
    working_dir: /workspace
    stdin_open: true
    tty: true
    volumes:
      - .:/workspace
      - ./gradle-cache:/root/.gradle
      - ./flutter-cache:/root/.pub-cache
  • 启动:
docker compose up -d
  • 进入:
docker exec -it android bash
  • 启动后先检查一下环境:
java -version
gradle -v
flutter --version
sdkmanager --version
adb version
  • 然后随便执行:
# Kotlin
./gradlew assembleDebug
./gradlew assembleRelease

# Flutter
flutter doctor -v
flutter pub get
flutter build apk --release

# Android SDK
sdkmanager --list
adb version

🤖Go 项目生成 Android SDK (AAR) 并在 Kotlin 调用

  1. 安装 gomobile
go install golang.org/x/mobile/cmd/gomobile@latest
go install golang.org/x/mobile/cmd/gobind@latest
gomobile init
  1. 编写 Go 库
  • 导出函数首字母必须大写
  • 一般只需暴露 Go 项目的启动、停止、重启、日志、生命周期等函数接口即可
  • gomobile 生成 Android 绑定后,业务端需要使用小驼峰命名调用
  • 默认会生成一个“通用 AAR”,里面会包含所有 Go 支持的多种架构,可在业务端打包时拆分abi

Flutter多平台架构思想

说明:Flutter 负责 UI 和业务编排,Platform Adapter 负责平台差异,Native Core 负责真正运行。

App 启动
↓
初始化依赖注入 / 配置 / 存储
↓
注册当前平台的 RuntimeService
↓
加载 Flutter UI
↓
用户操作 UI
↓
ViewModel 处理状态与交互
↓
UseCase / Repository 执行业务逻辑
↓
调用统一 RuntimeService 接口
↓
Platform Adapter 适配当前平台
↓
调用原生内核
   Android → AAR / .so
   Windows → exe
   Linux → binary
   macOS → binary / framework
   iOS → XCFramework / NetworkExtension
↓
内核回传状态 / 日志 / 错误 / 流量统计
↓
RuntimeService 统一转换为 Dart Model / Stream
↓
ViewModel 更新状态
↓
UI 自动刷新

最简结构

lib/
├── main.dart
├── ui/              # 页面、组件、ViewModel
├── domain/          # Model、UseCase、抽象接口
├── data/            # Repository、Service实现
└── platform/        # Android/Windows/Linux/macOS/iOS 适配器