Flutterコマンドを深掘りします!2回目
目次
flutter build – ビルドコマンド
リリース用のアプリを作成するコマンドです!
APK vs App Bundle
# APK(テスト配布用)
# 友人にテストしてもらう(直接送る)
flutter build apk --release
# App Bundle(Google Play用)
# Google Playにアップロード
flutter build appbundle --release
| 項目 | APK | App Bundle |
|---|---|---|
| ファイル形式 | .apk | .aab |
| 用途 | 直接インストール | Google Play経由 |
| サイズ | 大きい(全アーキテクチャ含む) | 小さい(必要な分だけ) |
| 推奨度 | テスト用 | 本番用 ✅ |
🔧 ビルドオプション
# デバッグビルド(開発中のテスト用)
flutter build apk --debug
# 特定のCPUアーキテクチャのみ
flutter build apk --target-platform android-arm64
# 難読化を有効化
flutter build apk --obfuscate --split-debug-info=./debug-info
# ファイルサイズを分析
flutter build apk --analyze-size
🔧 iOS向けビルド
# 基本のビルド
flutter build ios --release
# 設定のみ更新(実際にはXcodeでビルド)
flutter build ios --config-only --release
# シミュレータ用
flutter build ios --simulator
# 特定のフレーバー
flutter build ios --flavor production
📱 iOS のビルドフロー:Flutterだけでは完結しません!
# ① Flutter側の設定を更新
flutter build ios --config-only --release
# ② Xcodeでアーカイブ
open ios/Runner.xcworkspace
# Product → Archive
# ③ App Store Connect にアップロード
# Xcode の Organizer から配布
🌐 その他のプラットフォーム
# Webアプリ
flutter build web
# macOSアプリ
flutter build macos --release
# Windowsアプリ
flutter build windows --release
# Linuxアプリ
flutter build linux --release
🎯 ビルドモードの違い
Debug(デバッグモード)
flutter build apk --debug
特徴:
- ✅ ホットリロード可能
- ✅ デバッグ情報あり
- ❌ 動作が遅い
- ❌ 動作が遅い
→用途: 開発中のテスト
Release(リリースモード)
flutter build apk --release
特徴:
- ✅ 最適化済み
- ✅ 動作が速い
- ✅ ファイルサイズ小さい
- ❌ デバッグ不可
→用途: 配布用、本番用
Profile(プロファイルモード)
flutter build apk --profile
特徴:
- ✅ 最適化済み
- ✅ パフォーマンス測定可能
- ✅ デバッグ情報あり
- ❌ 配布には使わない
→用途: パフォーマンス測定
📁 ビルドファイルの場所
# Android APK
build/app/outputs/flutter-apk/app-release.apk
# Android App Bundle
build/app/outputs/bundle/release/app-release.aab
# iOS
build/ios/iphoneos/Runner.app
リリース準備:実際の使用例
# ① pubspec.yamlでバージョンアップ
version: 1.0.4+5 → 1.0.5+6
# ② クリーン
flutter clean
# ③ パッケージ取得
flutter pub get
# ④ Androidビルド
flutter build appbundle --release
# ⑤ iOSビルド設定
flutter build ios --config-only --release
# ⑥ Xcodeでアーカイブ
open ios/Runner.xcworkspace
