iOS一套代码展示多个APP以及不同图标名称

先看一下效果图, 实现效果, 同一个手机安装同一个项目的不同版本:

前言

最近收到新需求, 要求同一个工程打包出来的不同的安装包,要同时安装到一个手机上, 就是一个手机要能安装测试版, 正式版等不同版本, 当时脑子一顿惊雷, 这要怎么搞, 办法总是有的, 仔细分析了一下, 要安装不同版本, 就要配置不同的bound ID, 有一个不同的bound ID, 岂不是预示着有一个新的APP, 那各种证书岂不是要一套新的? 当时心中一万句MMP, 心说好麻烦.

本着偷懒是程序员唯一生产力这一宗旨, 查阅资料, 发现了一个更简便的方法, 省去了改来改去bound ID, 切换各种证书的麻烦, 一次配置, 终身受益, 可谓一劳永逸, 配置了一下, 简直如沐春风, 整个人都变好了.

下面介绍一下配置步骤:

正文

1.在工程中配置不同的bound ID

我们都是知道, 要想装不同的APP, 只有配置不同的bound ID, 原来项目中就有配置不同bound ID的地方, 下面看图:

配置不同bound ID

这里之前是一样的, 现在我们在debug模式那里改了一个不一样的, 加了一个dev的标志,这样就区分开了;

2.配置不同的AppIcon

不同的版本AppIcon也不一样, 下面就配置一下测试版本的AppIcon, 取名为AppIconDev:

然后再当前Target的Build Setting下搜索icon找到Asset Catalog App Icon Set Name,然后进行如下配置:

3.配置不同的App Display Name

配置不同的应用名称,这里需要使用到User-Defined加上info.plist来进行配置;

首先,我们需要新增一个User-Defined,如下图:

4.配置info.plist文件

在info.plist中找到Bundle display name,将其设置成我们刚刚新建的User-Defined:

下面就大功告成了! 赶快编译一下看看效果吧!

总结

偷懒是唯一生产力!

看到这就是真爱,打个赏呗~