Flutter 之 Mac 环境搭建

目标

在 Mac 下,搭建 Flutter 运行的 iOS 开发环境

基础环境

要安装并运行 Flutter,您的开发环境必须满足以下最低要求:

  • 操作系统: macOS (64-bit)
  • 磁盘空间: 700 MB (不包括 Xcode 或 Android Studio 的磁盘空间)
  • 工具: Flutter 依赖下面这些命令行工具
    bash, mkdir, rm, git, curl, unzip, which

使用镜像

由于在国内访问 Flutter 有时可能会受到限制,Flutter 官方为中国开发者搭建了临时镜像,大家可以将如下环境变量加入到用户环境变量中(在命令行中运行如下命令):

export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn

或者,直接编辑/Users/你的用户名/.bash_profile
在这里插入图片描述

搭建 iOS 环境

安装 Xcode
开发 iOS 平台上的 Flutter 应用,你需要一个安装了 Xcode 的 Mac 设备。

  1. 通过直接下载或者通过Mac App Store来安装最新稳定版 Xcode;

  2. 通过在命令行中运行以下命令来配置 Xcode command-line tools:

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

    当你安装了最新版本的 Xcode,大部分情况下,上面的路径都是一样的。但如果你安装了不同版本的 Xcode,你可能要更改一下上述命令中的路径。

  3. 运行一次 Xcode 或者通过输入命令sudoxcodebuild-license来确保已经同意 Xcode 的许可协议。

安装了 Xcode 之后,你就可以在 iOS 真机或者模拟器上运行 Flutter 应用了。

iOS 模拟器

如果想要在 iOS 模拟器中运行和测试 Flutter 应用,通过 Spotlight 或者以下命令来启动模拟器:

$ open -a Simulator

iOS 环境依赖
要将您的 Flutter 应用安装到 iOS 真机设备,您需要一些额外的工具。

  • 安装homebrew(如果已经安装了 brew,跳过此步骤)

  • 打开终端,并运行这些命令,来安装用于将 Flutter 应用安装到 iOS 设备的工具

    以下安装,需要很长时间(可能大于10分钟),需要耐心等待

    brew update 
    brew install --HEAD libimobiledevice
    brew install ideviceinstaller ios-deploy cocoapods
    pod setup
    

    如果这些命令中的任何一个失败并出现错误,请运行 brew doctor 并按照说明解决问题.

安装 Flutter SDK

  • 去 flutter 官网下载
    下载地址:

    • https://flutter.dev/docs/development/tools/sdk/releases
    • https://flutter.cn/docs/development/tools/sdk/releases(国内镜像地址)
      Flutter 之 Mac 环境搭建_第1张图片

    或者通过 git 下载

    git clone -b beta https://github.com/flutter/flutter.git
    
  • 解压安装包到你想安装的目录,如:

    cd ~/myapp
    unzip ~/Downloads/flutter_macos_1.22.5-stable.zip
    
    #将解压后的目录命名为flutter,然后复制到/Users/liuchangtao/myapp/
    #最后的路径是/Users/liuchangtao/myapp/flutter
    
  • 添加 flutter 路径到 path 中:

    # 打开 bash_profile
    vim ~/.bash_profiles
    
    # 添加 flutter 环境里变量(在尾部,添加如下代码)
    export PATH="$PATH:/Users/liuchangtao/myapp/flutter/bin"
    
    # 保存退出: wq
    
    # 更新环境里变量
    source ~/.bash_profile
    

    请将上述 flutter 路径,换成你自己的 flutter 路径

  • 验证 flutter 命令

    # 在命令行中输入
    flutter -h
    

    初次运行会下载一些内容
    Flutter 之 Mac 环境搭建_第2张图片

  • 检测 flutter

    # 在命令行中输入
    flutter doctor
    

    初次运行时,它会下载它自己的依赖项并自行编译,可能需要等一会儿(以后再运行就会快得多)
    Flutter 之 Mac 环境搭建_第3张图片
    若 Android 或 iOS 有依赖缺失。请下载 Android Studio 或者 VS Code,然后在对应 IDE 中下载Flutter 插件。安装过程与 Windows 下的安装过程一致(参考:Flutter 之 Windows 环境搭建.md)
    以下为配置成功的截图:
    Flutter 之 Mac 环境搭建_第4张图片

创建 Flutter 应用
通过以下步骤来创建你的第一个 Flutter 应用并进行测试:

  1. 通过运行以下命令来创建一个新的 Flutter 应用:

    $ flutter create flutterdemo
    
  2. 上述命令创建了一个flutterdemo的目录,包含了 Flutter 初始的应用模版,切换路径到这个目录内:

    $ cd flutterdemo
    
  3. 确保模拟器已经处于运行状态:

    # 查看当前模拟器
    $ flutter emulators
    

    Flutter 之 Mac 环境搭建_第5张图片

    # 启动模拟器
    $ flutter emulator --launch apple_ios_simulator # ios 模拟器
    # 或者
    $ flutter emulator --launch Nexus_S_API_29 # Andorid 模拟器
    
  4. 运行 flutter

    # 执行项目工程,若有多个设备连接,需要 -d <设备的id>执行某个模拟器
    $ flutter run
    

    Flutter 之 Mac 环境搭建_第6张图片

使用 Xcode 打开 Flutter 项目
双击 Flutter 项目目录下的 ios/Runner.xcodeproj
Flutter 之 Mac 环境搭建_第7张图片
iOS 配置文件

iOS 下的配置文件是ios/Runner/Info.plist(相当于 android/src/main/AndroidManifest.xml)。我们可以在 iOS 配置文件中,配置权限、语言、主题等信息。一般有两个编辑方式:

  1. 在 VS Code 中编辑
    VS Code 中的 Info.plist 就是一个 XML 文件。例如:常用的权限设置有:

    <key>NSLocationWhenInUseUsageDescription</key>
    <string>App需要您的同意,才能在使用期间访问位置</string>
    
    <key>NSLocationAlwaysUsageDescription</key>
    <string>App需要您的同意,才能始终访问位置</string>
    <key>NSPhotoLibraryUsageDescription</key>
    <string>App需要您的同意,才能访问相册</string>
    
    <key>NSCameraUsageDescription</key>
    <string>App需要您的同意,才能访问相机</string>
    
    <key>NSMicrophoneUsageDescription</key>
    <string>App需要您的同意,才能访问麦克风</string>
    
    <key>NSLocationUsageDescription</key>
    <string>App需要您的同意,才能访问位置</string>
    
    <key>NSCalendarsUsageDescription</key>
    <string>App需要您的同意,才能访问日历</string>
    
    <key>NSRemindersUsageDescription</key>
    <string>App需要您的同意,才能访问提醒事项</string>
    
    <key>NSMotionUsageDescription</key>
    <string>App需要您的同意,才能访问运动与健身</string>
    
    <key>NSHealthUpdateUsageDescription</key>
    <string>App需要您的同意,才能访问健康更新</string>
    
    <key>NSHealthShareUsageDescription</key>
    <string>App需要您的同意,才能访问健康分享</string>
    
    <key>NSBluetoothPeripheralUsageDescription</key>
    <string>App需要您的同意,才能访问蓝牙</string>
    
    <key>NSAppleMusicUsageDescription</key>
    <string>App需要您的同意,才能访问媒体资料库</string>
    
    
  2. 在 Xcode 中编辑
    Xcode 提供了一个可编辑的列表,允许我们添加、删除和编辑具体的配置项。
    Flutter 之 Mac 环境搭建_第8张图片

你可能感兴趣的:(笔记,泛客户端开发,flutter,ios)