iOS 如何优雅的构建plus版本

作者: 倚楼听风雨wing | 来源:发表于2016-11-23 11:55 被阅读194次
两个target.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

Paste_Image.png

八、今后新建文件需要注意,同时勾选两个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

相关文章

网友评论

  • 813a7c6175dc:你这样每次还要改那个1还是2, 教你个办法, 在build Setting flag里面给Plus版加一个字段, 然后写段代码返回 isPlus这个值出去就好了, 以后key的切换等等都可以用 isPlus ? "" : "" 类似这样的三目就行了.
    倚楼听风雨wing:受教了,明天就添加到项目中去

本文标题:iOS 如何优雅的构建plus版本

本文链接:https://www.haomeiwen.com/subject/pnzmpttx.html