iOS APP 多服务器环境分离的方法
2018-07-21 10:06
369 查看
每个
App项目可以有多个环境,
开发环境、
测试环境、
预发布环境和
生产环境,至少有
开发环境和
生产环境
研发同学和测试同学经常需要在环境间切换,产品同学有时候也会心血来潮的看看各种版本,也就是说,有时候需要测试版本,有时候又需要正式版本,我之前的做法就是每次切换
url,然后重新打包,或者重新运行,超麻烦~
那么有没有可能在一个手机直接装多个版本呐?
答案肯定是有滴(否则还码这篇文章干嘛呐~)
个人觉得最好的方案就是 ------ 环境分离 ,即不同的环境对应不同的
app
每个Target代表一个编译的产品。每个Target,可以有不同的编译源文件和资源文件。那么,实现环境分离的方案,就是分别建立测试环境和生产环境的两个Target。默认的Target作为生产环境的Target,在此基础上复制多一个Target作为测试环境的Target。
一个
app只能有一个唯一标示,
iOS使用的是
Bundle Identifier,
Android使用的是包名,因此,在一个手机上安装多个环境的
app,只需要每个环境的
Bundle Identifier或者包名不同即可, 一般做法是在后面添加环境后缀 ,比如生产环境为
com.shenfengfeng.myapp,那么测试环境就可以为
com.shenfengfeng.myapp.alpha,
app名字会更新,当然也可以手动改,当然也还可以改图标,用来在同一个手机上区分版本
但是这种做法有个不好的地方就是需要,需要针对不同的环境,申请,不同的第三方的
appKey、
appSecret
那么是来回注释,还是申请账号,看自己取舍吧~
多环境分离演示:
概述:
iOS app可以通过创建不同环境的Target来实现环境分离,不同Target可以设置不同的
bundle id、名称、图标等。每个
target也对应的
plist文件
1、复制
target,选中后右键,选择
Duplicate
2、默认的名字为
**** copy
3、修改
target和
bundle id,需要注意的是,在修改
target的名字后,需要切换到
Xcode的其他地方(比如其他
target)后再切回来,然后
display name会自动适配
4、项目结构里面会多一个默认
target名字的
***.plist文件
5、 右键
show in finder,将这个
plist文件改名,并且移到项目的原本的
plist文件的同级目录,然后重新添加到项目中,注意选择的
target
6、看下图
7、因为移动了新的
target的
plist文件,所需要重新关联到新的
plist文件,关联后随意切换后会刷新
8、按着键盘
option,点击
Xcode运行按钮(左上方),然后点击
Manage Schemes
9、重命名新创建
schemes
10、如图
11、右键新建
AppIcon
12、选择新的
target对应的
AppIcon
13、关键步骤
设置了不同的
target后,代码上可以根据不同的
target来做不同的处理,就需要知道,当前在编译的是哪个
target
这可以通过,预编译宏来区分,比如在
runtime alpha的
target的
Build Settings中,在
Preprocessor Macros中添加
FF_ALPHA
(也可以给
target
runtime设置
FF_ALPHA=0,给
runtime alpha设置
FF_ALPHA=1)
14、代码中就可以如下判断,依据实际情况
#ifdef FF_ALPHA #define FF_URL @"****" #elif ... #define FF_URL @"****" #else #define FF_URL @"****" #endif
15、结束,非常感谢看到这里的小伙伴,笔者感觉到很开心~
遇到的问题
切换
Scheme时候,遇到如下图报错
笔者将模拟器格式化后正常,
Xcode 9.*--->
Hardware → Erase All Content and Settings...
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
相关文章推荐
- 关于配置IIS服务器为ios app的下载服务器方法
- 如何使用mysql(lamp)分离环境搭建dedecms织梦网站及apache服务器常见的403http状态码及其解决方法
- ios app应用开发环境配置方法总结
- iOS开发-将自己的app在appstore下架的方法(转载)
- iOS利用摄像头获取环境光感参数的方法
- ios中摄像头/相册获取图片,压缩图片,上传服务器方法总结
- iOS的多版本配置(版本分离,多环境配置)
- iOS程序的五种状态,AppDelegate中的回调方法和通知
- CrashMonkey4iOS在Xode8环境下的使用方法
- iOS提取APP中的图片资源的方法
- iOS 开发 XMPP即时通讯项目开发(仿微信)-详解之xmpp环境搭建(数据库/客户端/服务器)
- IIS下PHP运行环境搭建与网页服务器故障排查方法
- ios俩个APP之间跳转、传值,以及直接跳转到指定app页面 或者 app 评价页面 的方法
- ios 判断app程序第一次启动方法
- Xcode7.1环境下上架iOS App到AppStore 流程 (1)
- xcconfig文件配置iOS app环境变量
- (转)iOS如何取得APP的版本信息跟服务器对比进行升级提示?
- ios中摄像头/相册获取图片,压缩图片,上传服务器方法总结
- iOS 网络访问安全问题解决方法App Transport Security policy requires the use of a secure connection