iOS 如何优雅的构建plus版本
2016-11-23 本文已影响194人
倚楼听风雨wing
两个target.png
第一步.png
Paste_Image.png
1.背景介绍
为了防止应用不小心被苹果下架,或者说是一些别的问题,一般公司的主项目都会有两个版本,一个普通版,一个plus版。这两个版本的应用除了证书和名称不一样,里面的代码内容是完全一样的。那么我们就需要一些方法来灵活的切换两个版本了。
2.最终目的
Paste_Image.png我们所有需要做的就是切换target,证书,AppIcon等都可以全部一次性配置好,在切换target的时候自动选择对应的证书和AppIcon,宏页会随着target的切换而切换。比如项目中有友盟分享什么的我们可以使用宏来处理,例如:
// 区分主副版本
#define kAppVice 1 // 1:主版本
// 2:副版本
// MARK: 友盟分享
#define UMENG_APPKEY @"5375809c56240b392"
#define kUMENG_URL @"http://www.umeng.com/social"
#if 1 == kAppVice
#define kUMENG_WXAppId @"wx7074076f395"
#define kUMENG_WXAppSecret @"2db8c8e74a1cec2edfde87"
#define kUMENG_QQAppId @"110351"
#define kUMENG_QQAppKey @"ZkGVW"
#else
#define kUMENG_WXAppId @"wx99f7a7e9"
#define kUMENG_WXAppSecret @"e310f0d8c2037825f161514"
#define kUMENG_QQAppId @"110518"
#define kUMENG_QQAppKey @"QLeSMNuX"
#endif
备注【这里的appKey,和appId 都是我乱写的,实际工作中写自己申请的就可以了】
3.实现步骤
一、选中项目target,右键复制一个target
第一步.png
二、选择duplicate Only
第二步.png点击后效果图如下,然后选中复制出来的target更改名称为WYTargetPlusDemo_Plus[点击enter键即可编辑]
Paste_Image.png
三、更改编译的target名称
Paste_Image.png Paste_Image.png四、选中不同的target做各自的bundleId和和证书的配置
Paste_Image.png五、选中不同的target做各自的URL Types配置
Paste_Image.png六、创建plus版本的AppIcon
Paste_Image.png七、选中plus版本target,然后选中Build Settings
,搜索AppIcon
,更改Plus版本要加载的AppIcon为我们之前新建的AppIcon-Plus
八、今后新建文件需要注意,同时勾选两个target
Paste_Image.png九、升级pod需要注意的地方
在pod中需要指明两个targe例:
platform :ios, ‘7.0’
target 'WYTargetPlusDemo' do
use_frameworks!
pod 'ZipArchive'
end
target 'WYTargetPlusDemo_Plus' do
use_frameworks!
pod 'ZipArchive'
end