Flutter 资料/问题记录(含在Mac上安装运行过程)

引用文章链接:
官网
Flutter中文网
Flutter Install (安装Flutter)
https://flutter.dev/docs/get-started/installhttps://flutterchina.club/get-started/install/
Flutter入门: 在macOS上搭建Flutter开发环境使用镜像
Flutter SDK releases

官方文档
iOS原生和Flutter交互


常用命令

flutter pub get       # 安装依赖
flutter clean          # 清理构建缓存
flutter pub upgrade    # 升级依赖
flutter doctor        # 检查开发环境
flutter devices       # 列出连接的设备
flutter build apk    # 构建 Android APK
flutter build ios     # 构建 iOS 项目



准备工作

安装Xcode、VSCode、Android Studio (IntelliJ IDE)
1、 Mac 安装JDK
下载地址

2.1、Macbook中IntelliJ IDEA 15安装及配置Android_SDK https://blog.csdn.net/m0_37568814/article/details/80347586

2.2、Macbook中IntelliJ IDEA 15运行Android程序环境问题汇总 https://blog.csdn.net/m0_37568814/article/details/80348113

cd /Users/zhangmeng/Desktop/编程开发/JAVA安卓/android-sdk-macosx/tools
./android sdk
cd /Users/zhangmeng/Desktop/编程开发/JAVA安卓/android-sdk-macosx/tools
cd /Users/zhangmeng/Desktop/编程开发/JAVA安卓/android-sdk-macosx/platform-tools

export PATH=$PATH:/Users/zhangmeng/Desktop/编程开发/JAVA安卓/android-sdk-macosx/tools
export PATH=$PATH:/Users/zhangmeng/Desktop/编程开发/JAVA安卓/android-sdk-macosx/platform-tools


Mac 安装flutter (方式一:官网安装)

https://docs.flutter.dev/get-started/install/macos

image.png
image.png

SDK archive
https://docs.flutter.dev/install/archive#macos


Mac 安装flutter(方式二:Brew安装)

使用命令:
brew install --cask flutter

配置环境变量
打开终端,编辑 shell 配置文件(如 ~/.zshrc 或 ~/.bash_profile):
添加以下内容:

export PATH="$PATH:$HOME/flutter/bin"
export PATH="$PATH:$HOME/.pub-cache/bin"

使配置生效:使用命令 或 关上 zshrc文件
source ~/.zshrc

检查依赖是否完整:
flutter doctor // 测试运行
创建并运行一个测试项目:
flutter create myapp
cd myapp //项目名称必须小写
flutter run //运行项目(在真机上)

|

5. 其他实用命令

命令 说明
flutter emulators 查看所有可用模拟器
flutter run -d ios --release 以 release 模式运行
flutter build ios 生成 iOS 应用包(需签名)

//快捷命令
r Hot reload. 🔥🔥🔥
R Hot restart.
h List all available interactive commands.
d Detach (terminate "flutter run" but leave application running).
c Clear the screen
q Quit (terminate the application on the device).


以下是运行过程:

备注:箭头红色字体的命令
cd 到文件夹 /Users/zhangmeng/myapp
cd myapp
//在真机上运行
flutter run

\color{Crimson}{\small 报错:}

Launching lib/main.dart on ZmiPhone11 in debug mode...
════════════════════════════════════════════
'// 没有找到有效的代码签名证书'
No valid code signing certificates were found 
You can connect to your Apple Developer account by signing in with your Apple ID 
'//在导航器中选择“Runner”项目,然后选择“Runner”目标在项目设置中''
in Xcode and create an iOS Development Certificate as well as a Provisioning
Profile for your project by:
 1- Open the Flutter project's Xcode target with
 open ios/Runner.xcworkspace
 2- Select the 'Runner' project in the navigator then the 'Runner' target
 in the project settings
 3- Make sure a 'Development Team' is selected under Signing & Capabilities > Team.
 You may need to:
 - Log in with your Apple ID in Xcode first
 - Ensure you have a valid unique Bundle ID
 - Register your device with your Apple Developer Account
 - Let Xcode automatically provision a profile for your app
 4- Build or run your project again
 5- Trust your newly created Development Certificate on your iOS device
 via Settings > General > Device Management > [your new certificate] > Trust 
'//5\. 信任iOS设备上新创建的开发证书通过设置>一般>设备管理>[您的新证书]>信任'
For more information, please visit:
https://developer.apple.com/library/content/documentation/IDEs/Conceptual/
AppDistributionGuide/MaintainingCertificates/MaintainingCertificates.html
Or run on an iOS simulator without code signing //或者在没有代码签名的iOS模拟器上运行
════════════════════════════════════════════
Error: No development certificates available to code sign app for device deployment

//查看模拟器列表
xcrun simctl list devices

== Devices ==
-- iOS 17.2 --
 iPhone11 (24D3CC8F-3A30-446B-BFDF-439562D6A865) (Shutdown)
 iPhone14Plus (08E5C161-B350-48D7-8D32-2DC0C077C658) (Shutdown)
 iPhone 15 (146B6A4D-EDE3-4825-ADF0-E2A608B00F48) (Shutdown)
-- iOS 17.4 --
 iPhone SE (3rd generation) (759E8C12-B57F-48B5-B4F2-692C03072841) (Shutdown)
 iPhone 15 Plus (2B28CB9A-5052-4CFE-8F65-41307DE65B60) (Shutdown)
-- iOS 17.5 --
 iPhone 15 Pro (41A229F0-1A4F-4376-A6AF-8E590DB01F02) (Shutdown)
-- iOS 18.0 --
 iPhone Xs Max (87F467F0-29B8-413F-BDBE-B014CCD1767D) (Shutdown)
 iPhone 11Pro (2F06D053-1A75-4CC3-800C-56A4C06913E6) (Shutdown)
 iPhone 12 (788BE51F-9591-460B-A4A5-1E18B26F6E4C) (Shutdown)
 iPhone 16 Pro (12DDF896-2086-4E62-B6C5-9601BAADCD16) (Shutdown)
 iPhone 16 Pro Max (22A41D8D-FDA9-44DD-8AE5-3035A913F39B) (Shutdown)
 iPhone 16 (B8FDAA1F-5EE2-41FD-8C40-0741F8BBC8E9) (Shutdown)
 iPhone 16 Plus (18803C75-6FC1-4271-8633-111099D00FB8) (Shutdown)

open -a Simulator --args -CurrentDeviceUDID 18803C75-6FC1-4271-8633-111099D00FB8
flutter run
//查看 flutter 支持的模拟器
flutter emulators

Unable to find any emulator sources. Please ensure you have some //没找到模拟器
Android AVD images or an iOS Simulator available.

//绑定依赖
flutter upgrade
Flutter is already up to date on channel stable
Flutter 3.29.2 • channel stable • https://github.com/flutter/flutter.git
Framework • revision c236373904 (2 weeks ago) • 2025-03-13 16:17:06 -0400
Engine • revision 18b71d647a
Tools • Dart 3.7.2 • DevTools 2.42.3
//关闭命令终端,重启
//查看模拟器ID:18803C75-6FC1-4271-8633-111099D00FB8

flutter devices
Found 4 connected devices:
iPhone 16 Plus (mobile) • 18803C75-6FC1-4271-8633-111099D00FB8 • ios
• com.apple.CoreSimulator.SimRuntime.iOS-18-0 (simulator)
macOS (desktop) • macos •
darwin-arm64 • macOS 15.0.1 24A348 darwin-arm64 (Rosetta)
Mac Designed for iPad (desktop) • mac-designed-for-ipad •
darwin • macOS 15.0.1 24A348 darwin-arm64 (Rosetta)
Chrome (web) • chrome •
web-javascript • Google Chrome 134.0.6998.166

// open -a Simulator --args -CurrentDeviceUDID <设备UDID>
open -a Simulator --args -CurrentDeviceUDID 18803C75-6FC1-4271-8633-111099D00FB8

//在模拟器上运行 # 选择特定设备运行(运行成功)
flutter run -d 18803C75-6FC1-4271-8633-111099D00FB8

注意:如果有Xcode 证书,可以直接 flutter run 在真机上运行


添加依赖包

这个工具类使用了以下依赖,你需要在 pubspec.yaml 中添加:
dependencies:
flutter:
sdk: flutter
intl: ^0.18.1
url_launcher: ^6.1.11

在终端中运行以下命令,来安装依赖包:
flutter pub get



image.png





//================== 问题记录 ==================

我的iOS项目名称是MyiOSApp ,Xcode 中运行 iOS 项目 报错:
error: Sandbox: mkdir(44871) deny(1) file-write-create /Users/zhangmeng/Library/Developer/Xcode/DerivedData/MyiOSApp-fxawzzfddcnqwahkvcfempeikwxj/Build/Products/Debug-iphonesimulator/MyiOSApp.app/Frameworks (in target 'MyiOSApp' from project 'MyiOSApp') error: mkdir: /Users/zhangmeng/Library/Developer/Xcode/DerivedData/MyiOSApp-fxawzzfddcnqwahkvcfempeikwxj/Build/Products/Debug-iphonesimulator/MyiOSApp.app/Frameworks: Operation not permitted

通常方案1或方案2就能解决这个问题。这个问题主要是由于Xcode在尝试将Flutter框架复制到应用包时被系统沙盒限制导致的。

解决方案 1:清理并重新构建

rm -rf ~/Library/Developer/Xcode/DerivedData/ \color{SeaGreen}{\small //删除缓存}

cd flutter_module
flutter clean \color{SeaGreen}{\small //删除fluttr依赖缓存}
pod install
flutter pub get
flutter build ios --simulator

rm -rf Pods Podfile.lock \color{SeaGreen}{\small //删除pod依赖缓存}
pod install

解决方案 2:修改 Xcode 设置
  1. 在 Xcode 中:

    • 选择你的 Target (MyiOSApp)
    • 进入 "Build Settings" 标签
    • 搜索 "User Script Sandboxing"
    • 将其设置为 NO
  2. 同样在 Build Settings 中:

    • 搜索 "Runpath Search Paths"
    • 确保包含 @executable_path/Frameworks
解决方案 3:检查文件权限
sudo chown -R $(whoami) ~/Library/Developer/Xcode/DerivedData/
sudo chmod -R 755 ~/Library/Developer/Xcode/DerivedData/


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容