根据Debug或Release模式加载对应程序包和Icon

一般应用在开发阶段使用的都是Debug模式和测试服务器,而上线到Appstore后则使用Release模式和生产服务器(线上服务器)。

开发者在发布一个新版本之前,一般会调成Release模式和线上服务器在测试一遍,保证应用的稳定性。然而Release模式和Debug模式绑定的是同一个Bundle ID,则这两种模式共用一个沙盒目录,由于一般应用都会缓存一些信息在本地沙盒,那么在生成一个新模式的程序包App时,需要把旧模式的程序包删掉,才能保证应用不会有异常。哈哈,这样就会对开发者带来不必要的麻烦。 

能不能根据Debug或Release模式动态修改Bundle ID,以保证沙盒目录的不同呢? --可以!不同的Bundle ID就是两个不同的应用,但用的是同一个Icon,这样就区分不开两者了,那么能不能根据不同模式动态的加载不同Icon呢? --也是可以的!

效果图:

 操作步骤如下:

1、首先在images.xcassets 添加两个Icon的集合,分别命名 AppIcon和AppIconDebug。并把不同Debug和Release模式的Icon分别添加进去。

Release 模式Icon

Debug 模式Icon


2、在RARGETS中的Build Settings中的Asset Catalog App Icon Set Name的Debug和Release中输入刚才添加的Debug和Release模式的Icon集合的名字,如下图:

3、接着点击Editor->Add Build Setting->Add User-Defined Setting 如图

4、在添加的User-Defined 中输入Bundle_identifier。区分唯一表示Bundle ID,在Debug模式下输入com.xxx.app.debug,Release模式下输入com.xxx.app。如图:

5、修改Custom iOS Target Properties 中的Bundle identifier,在该行输入${Bundle_identifier}  如图:

完活,把程序分别调成Debug和Release模式,Run下看效果咯!

Product->Scheme->Edit Scheme->Info->Build Configuration 设置Debug和Release模式。^^

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,064评论 19 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,079评论 25 709
  • 朱嘉诚11阅读 1,063评论 0 0
  • 我们的故事似乎总跟咖啡有关系,你说这家叫“拾年”的咖啡馆开了很久了,细细一数,我们也认识很久了。 ...
    萧北笙烟阅读 2,286评论 0 0
  • 秋风起 夜渐凉 初秋敲打儿时的窗 皎洁月色透过墙 花衣裳 落眼旁 行人匆忙路上 回忆步步思量 思考什么? 秋风一语...
    温言张阅读 1,724评论 0 0

友情链接更多精彩内容