项目中配置多个target及podfile文件配置
2017-06-23 13:13
513 查看
配置多个target
1.copy target。在项目配置TARGETS中,选中需要复制的target目标,右键选择Duplicate,然后就会出现一个叫* copy名字的target。
2.修改target名称。
首先可以先把新复制的target的名称修改了,双击target名字进入编辑状态,进行名字修改。
然后修改scheme的名称,在Xcode左上角点击工程名称,在弹出的下拉框中选择Manage Schemes,在弹出的列表框中,选择新加的名为 * copy的target,将它修改成和前面修改的相同的名字。
3.配置target。
在copy target的时候同时也复制了一份* copy-info.plist文件,当然可以根据自己的需要修改此plist的的名字,但是一定将此plist文件和target重新绑定。选择新copy的target,点击General,会出现一个选择文件的按钮,点击选择你新修改名字的plist文件。
到此2个target其实已经基本成功了,目前两个target已经可以运行了。后面你添加文件的时候,根据自己需要添加到对应的target就可以了。但是在代码中怎样区分两个target呢?我们可以添加一个预编译宏来解决。target->Build Setting,搜索:Preprocessor Macros,设置Debug和Release里的预编译宏内容,比如TARGET_VERSION=1表示一个target版本(注意=前后不能右空格,有空格会编译不过),程序中对不同版本这样判断:
#if TARGET_VERSION_LITE ==1 ... #elif TARGET_VERSION_LITE ==2 ... #endif
问题来了?
由于项目中之前配置了podfile,复制之后两个target没什么问题,但是当我在podfile中添加一个新的三方库,pod install的时候,就会导致其中一个target会找不到头文件。之前查阅资料就看到一篇文章,提示要先把podfile文件写好,并且pod install了,最后再copy,这样就不会出现问题。但是一个项目有时候很难预料后面会用到什么第三方库,又是多人协作,难免别人不会再后面会添加新的第三方库。经过多次试验,查阅资料,感觉自己又像发现新大陆一样,原来pod文件编写也是一门学问,也是有很多语法的。解决问题的方法就是podfile文件的正确编写。查看了官方podfile文件编写语法,经过试验,终于解决了此问题。source 'https://github.com/CocoaPods/Specs.git' platform :ios, '8.0' abstract_target 'AAAA' do pod 'AFNetworking', '~> 3.0' pod 'Masonry' pod 'MJRefresh' pod 'SDWebImage', '~>3.8' pod 'RongCloudIM/IMLib', '2.8.0' pod 'RongCloudIM/IMKit', '2.8.0' pod 'SVProgressHUD' target 'BBBB' target 'CCCC' end
在podfile配置文件中,我使用了abstract_target关键字,后面跟的名字AAAA是一个不存在的target名字,后面增加我项目中实际存在的两个target,整体表示我这个两个target共用上面的所有库。当然我觉得还有其他方式可以实现,pod语法还不是很熟,还有很多需要学习了解的地方。
相关文章推荐
- iOS开发:给项目工程里面添加Podfile配置文件,以及CocoaPods的简单使用
- 多个Target的podfile文件配置
- iOS app多个开发环境变量(target)下配置Podfile文件
- iOS开发:给项目工程里面添加Podfile配置文件,以及CocoaPods的简单使用
- 配置Podfile 一个工程内的多个Target
- web 项目log4j配置无法获取文件(java.io.FileNotFoundException: /logs/log.txt (No such file or directory))猜想
- 在项目中根据配置文件路径生成File对象的方法
- iOS开发 pod管理项目,多个target管理的Podfile的写法
- cocoapods 把reactNative 集成到现有项目中Podfile文件内容
- j2ee项目中xml配置文件出现错误Referenced file contains errors
- 第四篇、Swift_Podfile文件配置格式
- Java项目读取配置文件时,FileNotFoundException 系统找不到指定的文件,System.getProperty("user.dir")的理解
- cocaopods升级及配置Podfile文件
- CocoaPods详解之----Podfile.lock文件 Podfile文件 Podfile和target CocoaPods常用命令
- Cocoapods配置文件Podfile的编写
- web 项目中 在spring中使用log4j 定时刷新log4j配置文件
- web 项目中 在spring中使用log4j 定时刷新log4j配置文件
- [原创]linux c项目配置文件
- 无人值守应答文件中各配置项目的详解
- load_file()查看常用的一些配置文件