在创建多个马甲包或者多个App间只有很小的差异是使用多Target是一种很好的方法

https://www.jianshu.com/p/18db54655246

1:选中原始的Target, 点击右键选中Duplicate,之后会生成一个Target Copy。

2:更改Copy出来的Target的名字为需要的名字

3:更改Scheme为对应的名字。 选中 Manage Schemes 更改对应的名称。

4:点击close。初步完成。

5:更改info.plist 的名字,最好将所有的info.plist 放在一起方便管理。更改info.plist为正确的路径。

6:设置Macro,由于swift中没有宏,所以要设置标志物 Other Swift Flags 即 ‘-D+Name’

  swift添加标志位要加‘-D+Name’

         //swift 中标志位的使用
#if APPTYPE1
print("哇哈哈");
#elseif APPTYPE0
print("冰激凌");
#else
print("未知的");
#endif
         // OC 中宏
#if APPTYPE == 0
NSLog("哇哈哈");
#else
NSLog("冰激凌");
#endif

二: Other linker Flags

1  -Objc:告诉链接器将库中的所有Objective-C和Category类都加载进来(命名不重复的类)。缺点,会将没有用到的类也加载进来,导致App变大,同事如果只有  Category类,-Objc不起作用

2 -all_load:强制将所有的类都加载进来,可以解决只有Category类的问题。但是静态库中命名重复的类会被重复导入出现问题。

3 -force_load:类似all_load,可以指定完全加载某个静态库,而不影响其他的库。

iOS 多Target, Other link Flag的更多相关文章

  1. ios多target开发

    链接: ios开发时,在Xcode中添加多个targets进行版本控制 如何在iOS项目中创建多个target 多个Target的使用 iOS开发中如何创建多个target

  2. 【IOS】Target membership

    Target membership是指XCode中,一个文件属于哪一个工程,在XCode左侧的工程面板中选中一个文件,在XCode右侧的属性面板中会显示其Target Membership,如下图. ...

  3. Cocos2d-x3.0 iOS 一键编译多个target并打包ipa。

    1.编写app打包为ipa的 shell脚本.将以下代码保存为app2ipa.sh. #!/bin/sh m_appPath="" m_ipaPath="" m ...

  4. Write a makefile to compile *.c and link to executable target

    https://wenku.baidu.com/view/b1ec946027d3240c8447ef9a.html GNU+make中文手册V3.8 <=========From Docs== ...

  5. ios 常见问题解决

    一,libxml/HTMLparser.h file not find 第一种方法: 点击左边项目的根目录,再点击右边的Build Settings,手工输入文字:“Header search pat ...

  6. iOS各种问题处理

    本文转载至:http://www.cnblogs.com/ygm900/category/436923.html 推荐初学者前去学习.     mac 拷贝文件时报错 8060 解决方案 摘要: 解决 ...

  7. 百度地图ios环境配置

    1 前言 由于工作需要,要开始捣腾百度地图了,今天上午初始牛刀,各种碰壁,无奈之下,中午睡了一觉,养精蓄锐,以备下午大战三百回合,所幸下午中午把百度地图Demo捣腾出来了,在此与大家分享,环境搭建教程 ...

  8. iOS开发之App间账号共享与SDK封装

    上篇博客<iOS逆向工程之KeyChain与Snoop-it>中已经提到了,App间的数据共享可以使用KeyChian来实现.本篇博客就实战一下呢.开门见山,本篇博客会封装一个登录用的SD ...

  9. ios页面过渡效果插件Kontext

    效果体验:http://keleyi.com/keleyi/phtml/html5/28.htm 以下是代码: <!doctype html> <html> <head& ...

随机推荐

  1. 【SQL模板】一.修改/新增存储过程TSQL

    ---Name: 创建存储过程模板.sql ---Purpose: 用于创建 数据库中 新的存储过程 ---Author: xx ---Time: 2015-12-18 10:26:06 ---Rem ...

  2. meterpreter 如何留后门,使攻击持久化

    安装后门方法一:meterpreter >run persistence -X -i 5 -p 443 -r 192.168.0.108 Persistent agent script is 6 ...

  3. Linux readelf命令

    一.简介 readelf用来显示一个或者多个elf格式的目标文件的信息,可以通过它的选项来控制显示哪些信息.这里的elf-file(s)就表示那些被检查的文件.可以支持32位,64位的elf格式文件, ...

  4. Extended Backus–Naur Form

    From Wikipedia, the free encyclopedia In computer science, Extended Backus–Naur Form (EBNF) is a fam ...

  5. 向Ubuntu的Dash中添加图标

    首先准备.xpm图标文件,如果程序文件夹中没有,那么可以根据自己喜好到网上下载喜欢的图标,不要太大,然后将其改为.xpm文件(直接改了后缀名就行).然后打开/usr/share/application ...

  6. How to Install and Configure Bind 9 (DNS Server) on Ubuntu / Debian System

    by Pradeep Kumar · Published November 19, 2017 · Updated November 19, 2017 DNS or Domain Name System ...

  7. axios 设置拦截器 全局设置带默认参数(发送 token 等)

    应用场景: 1,每个请求都带上的参数,比如token,时间戳等. 2,对返回的状态进行判断,比如token是否过期 代码如下: [javascript] view plain copy axios.i ...

  8. Binary search tree or not

    https://github.com/Premiumlab/Python-for-Algorithms--Data-Structures--and-Interviews/blob/master/Moc ...

  9. mac安全与隐私只有两个选项,少了一个任何来源

    很多软件安装后就会出现,程序已损坏,请移到废纸篓的提示. 解决方法:在终端里输入:sudo spctl --master-disable 然后回车,然后输入密码,即可在安全选项中看到重新出现的允许任何 ...

  10. 2018.07.29~30 uoj#170. Picks loves segment tree VIII(线段树)

    传送门 线段树好题. 维护区间取两种最值,区间加,求区间两种历史最值,区间最小值. 自己的写法调了一个晚上+一个上午+一个下午+一个晚上并没有调出来,90" role="prese ...