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

相关推荐
coooliang8 小时前
Flutter 中的单例模式
javascript·flutter·单例模式
coooliang8 小时前
Flutter项目中设置安卓启动页
android·flutter
JIngles1238 小时前
flutter将utf-8编码的字节序列转换为中英文字符串
java·javascript·flutter
B.-11 小时前
在 Flutter 中实现文件读写
开发语言·学习·flutter·android studio·xcode
freflying111921 小时前
使用jenkins构建Android+Flutter项目依赖自动升级带来兼容性问题及Jenkins构建速度慢问题解决
android·flutter·jenkins
机器瓦力1 天前
Flutter应用开发:对象存储管理图片
flutter
江上清风山间明月1 天前
Flutter最简单的路由管理方式Navigator
android·flutter·ios·路由·页面管理·navigator
weixin_411191841 天前
FlutterAssetsGenerator插件的使用
flutter
神秘_博士2 天前
自制AirTag,支持安卓/鸿蒙/PC/Home Assistant,无需拥有iPhone
arm开发·python·物联网·flutter·docker·gitee
陈皮话梅糖@2 天前
Flutter 网络请求与数据处理:从基础到单例封装
flutter·网络请求