Flutter 如何创建一个企业级项目 - iOS篇 ( 三 )

初始化项目

1, 安装Cocopods依赖

bash 复制代码
cd ios
pod install

2,设置最低支持iOS版本,我这里最低支持的设备是iphone6s,系统是iOS13

Podfile 设置 platform :ios, '13.0'

3, 设置Marketing Version${FLUTTER_BUILD_NAME}

4, 设置Current Project Version${FLUTTER_BUILD_NUMBER}

5, 查看Xcode面板中的Version/Build 已经和FLUTTER_BUILD_NAME/FLUTTER_BUILD_NUMBER 同步

c 复制代码
FLUTTER_BUILD_NAME=1.0.1
FLUTTER_BUILD_NUMBER=3

2, 创建 PROJECT Configurations

依次 Duplicate "Debug/Release/Profile" Configuration, 并在每种编译模式下增加三种不同环境的后缀,例如: Debug-dev/Debug-qa/Debug-product , 注意:不能写错,否则运行会报错

3,创建不同环境 xcconfig

由于 iOS没有 productFlavors,如果我们需要实现不同环境配置不同参数。 这里有两种方式:

1, 直接修改不同Configurations里面的值

但这样不利于统一管理,因此我们使用第二种方式

2,通过 xcconfig 文件管理不同环境的变量配置

c 复制代码
[Debug-dev.xcconfig]
#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
#include "Flutter/Generated.xcconfig"

/// App name
PRODUCT_NAME=Pollka Snow Dev

/// App identifier
PRODUCT_BUNDLE_IDENTIFIER=com.ski.pollka.snow.dev

/// FLUTTER_TARGET
FLUTTER_TARGET=lib/main_dev.dart

// Custom
ENV=dev

[Debug-qa.xcconfig]
#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
#include "Flutter/Generated.xcconfig"

/// App name
PRODUCT_NAME=Pollka Snow Test

/// App identifier
PRODUCT_BUNDLE_IDENTIFIER=com.ski.pollka.snow.qa

/// FLUTTER_TARGET
FLUTTER_TARGET=lib/main_qa.dart

// Custom
ENV=qa

[Debug-product.xcconfig]
#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"
#include "Flutter/Generated.xcconfig"

/// App name
PRODUCT_NAME=Pollka Snow

/// App identifier
PRODUCT_BUNDLE_IDENTIFIER=com.ski.pollka.snow

/// FLUTTER_TARGET
FLUTTER_TARGET=lib/main_product.dart

// Custom
ENV=product

Release-dev.xcconfig 只需要导入 Debug-dev.xcconfig

arduino 复制代码
[Release-dev.xcconfig]

#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"
#include "Flutter/Generated.xcconfig"
#include "Debug-dev.xcconfig"

4,创建不同环境Scheme

1,选中 Runner,依次创建 dev/qa/product Scheme, 创建完成可以删除 Runner Scheme
2,创建完成的效果如下,然后点击 Edit Scheme
3,依次配置 dev/qa/product Scheme 中的各种 Build Configuration

4,设置 Bundle Display Name/Product Name 为 $(PRODUCT_NAME)

App 名字:

IPA文件名字

5,设置Product Bundle Identifier
6,检查FLUTTER_TARGET/ENV

5,Info.Plist设置 Bundle display name / Bundle name

5,VSCode/XCode运行不同环境App

相关推荐
恋猫de小郭8 小时前
Flutter GenUI 0.9 和 A2UI 0.9 发布,全动动态 UI 支持,AI 在 App 里直出界面
android·flutter·ios
KKei16388 小时前
Flutter for OpenHarmony 学习专注模式APP技术文章
学习·flutter·华为·harmonyos
UnicornDev8 小时前
【Flutter x HarmonyOS 6】挑战功能的业务逻辑实现
flutter·华为·harmonyos·鸿蒙·鸿蒙系统
Lan_Se_Tian_Ma8 小时前
使用Cursor封装Flutter项目基建框架
前端·人工智能·flutter
天天开发8 小时前
Flutter Widget Previewer使用指南:提升开发效率的利器
前端·javascript·flutter
liulian09162 天前
Flutter 网络状态与内容分享库:connectivity_plus 与 share_plus 的 OpenHarmony 适配指南
网络·flutter
KKei16382 天前
Flutter for OpenHarmony 学习视频播放器技术文章
学习·flutter·华为·音视频·harmonyos
KKei16382 天前
Flutter for OpenHarmony 健身计划与运动打卡APP
flutter·华为·harmonyos
KKei16382 天前
Flutter for OpenHarmony 在线考试与自测系统APP技术文章
flutter·华为·harmonyos
liulian09162 天前
Flutter 依赖注入与设备信息库:get_it 与 device_info_plus 的 OpenHarmony 适配指南
flutter