Skip to main content

安裝與執行

在 Apple Silicon 的 macOS 上,用 Homebrew 安裝 Flutter,並用 Xcode 的 iOS 模擬器跑這個專案。實機安裝另外需要 Apple 開發憑證。

這份步驟在這台機器上對過:macOS 15.7.3、Flutter stable 3.47.6、Xcode 26.3、CocoaPods 1.17.0、iOS 26.3.1 Simulator。專案要求 Dart SDK ^3.13.5,目前的 Flutter stable 已滿足。原生 Liquid Glass 要在 iOS 26 或更新的模擬器上才看得到。

1. 安裝 Flutter​

終端機出現 zsh: command not found: flutter 時,用 Homebrew 安裝:

brew install --cask flutter

開一個新的終端機,確認指令在 PATH 裡:

flutter --version
flutter doctor

2. 接上 Xcode​

需要完整的 Xcode(從 App Store 安裝),不能只有 Command Line Tools。裝好後在終端機執行:

sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
sudo xcodebuild -runFirstLaunch

這兩行會要求輸入 Mac 登入密碼,輸入時畫面不會顯示字元。

接著打開一次 Xcode,讓它把第一次啟動的元件裝完。

3. 安裝 CocoaPods​

flutter doctor 若顯示 CocoaPods not installed,iOS 插件會無法編譯。這台機器已有 Homebrew,直接裝:

brew install cocoapods

4. 下載 iOS 模擬器​

flutter doctor 的 Xcode 列若寫 Unable to get list of installed Simulator runtimes,代表編譯用的 iOS SDK 有了,但沒有可開機的模擬器。可用下面指令確認 disk image 數量;Total Disk Images: 0 就是還沒下載:

xcrun simctl runtime list

下載 iOS 模擬器(數 GB,會跑一陣子):

xcodebuild -downloadPlatform iOS

也可以用介面:Xcode → Settings → Components,下載 iOS。

下完再跑一次 flutter doctor。Xcode 那列應變成 [✓]。

Android toolchain 若仍是 Unable to locate Android SDK,只跑 iOS 可以略過,不必裝 Android Studio。

5. 在模擬器執行​

cd ~/case/flutter-hope-church
flutter pub get
open -a Simulator
flutter run

flutter run 若列出多個裝置,選 iPhone 模擬器,不要選實機。例如:

[1]: 有一種程式叫「湯姆式」   ← 實機,沒有憑證時會失敗
[2]: iPhone 16e ← 選這個
Please choose one (or "q" to quit): 2

第一次編譯較久。完成後 App 會出現在模擬器上。

下次若模擬器已經開著、又想跳過選單,可以直接指定裝置:

flutter devices
flutter run -d <模擬器的 device id>

6. 裝到實機​

模擬器不需要簽名。裝到自己的 iPhone 時,flutter run 若出現 No valid code signing certificates were found,缺的是 Apple 開發憑證,不是 Bundle ID。

這個專案的 Bundle ID 已經是 com.hopechurch.hopeChurch。三樣東西分開看:

名稱作用這個專案
Bundle IDApp 的唯一名稱已有 com.hopechurch.hopeChurch
Development Certificate證明這支 App 是你的 Apple ID 編出來的要在 Xcode 登入後才會產生
Provisioning Profile把憑證、Bundle ID、這支 iPhone 綁在一起選好 Team 後通常由 Xcode 自動產生

在 Xcode 做一次:

  1. 在專案目錄執行 open ios/Runner.xcworkspace。
  2. 左邊選 Runner 專案,再選 Runner target。
  3. 還沒登入時,先到 Xcode → Settings → Accounts 加入 Apple ID。
  4. 打開 Signing & Capabilities,勾選 Automatically manage signing,Team 選這個 Apple ID。
  5. Bundle ID 維持 com.hopechurch.hopeChurch。若 Apple 說已被占用,改成自己的,例如 com.你的名字.hopechurch。
  6. 用線接上 iPhone,再執行 flutter run,選實機那一項。
  7. 手機第一次會擋未信任的開發者:到 設定 → 一般 → VPN 與裝置管理,信任這個憑證。

個人免費 Apple ID 可以在自己的手機上開發,憑證大約 7 天要重簽一次。要上架 App Store 才需要付費的 Apple Developer Program。

這支手機實際下過的指令(裝置 ID、鑰匙圈、偵錯版與正式版)見 常用 CLI:裝到 iPhone。