码迷,mamicode.com
首页 > 其他好文 > 详细

SDK中.a包过大,单独作为一个项目,功能项目引入SDK项目文档 及Search Paths相关参数说明

时间:2018-12-06 14:30:36      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:lan   href   demo   font   root   .com   不用   手动   linked   

SDK包过大,单独作为一个项目

项目中使用第三方的SDK包(例如所有的.a文件1G多),导致项目整体过大,这个时候就可以把第三方的.a文件单独作为一个项目。

每次自动化打包都要从git拉去项目,不用每次都拉去第三方的项目。

首先在TEST文件夹中创建一个Demo,在demo 中使用到了几个xxx.a文件,如下图所示:

技术分享图片

在Demo同级的文件夹中创建文件夹Demo-sdk文件夹,里面放入demo 中使用到了几个xxx.a文件,如下图所示:

技术分享图片

第一种方法:

打开Demo 在General中Linked Frameworks and Libraries中添加.a文件,点击+号,选择add other选中Demo-sdk文件夹中的.a文件,如下图所示

技术分享图片

技术分享图片

技术分享图片

这时候Linked Frameworks and Libraries中会成功添加.a文件,在查看Build Settings中Search Path - Library Search Paths中会指向.a所在文件夹,如下图所示:

技术分享图片

这个时候.a文件已经可以正常引用。

第二种方法:

打开项目,找到Build Settings中Search Path - Library Search Paths,在Library Search Paths后面双击,再打开Demo及Demo-sdk所在的文件夹,把Demo-sdk文件夹直接拖拽到Library Search Paths添加路径界面,如下图所示:

技术分享图片

拖拽成功后,会出现指向路径,如下图:

技术分享图片

这个时候.a文件已经可以正常引用。

Search Paths相关参数说明

    • 导入库的时候自动生成的的路径:$(PROJECT_DIR)/xxx/xxx/xxx,手动拖拽的路径"$(SRCROOT)/../xxx/xxx/xxx", 手动拖得有双引号,双引号的作用是如果在路径中有空格,可以识别该路径。没有双引号但是路径中有空格,我们发现它会自动变成两个路径。
      • 路径中有空格必须要加双引号
    • 多个路径可以用空格隔开,不用双引号包住
    • $(SRCROOT)/ $(PROJECT_DIR)基本没啥区别,都是指向*.xcodeproj所在的路径
    • 通过../来调到上一层路径,返回上上层文件夹用../../
    • $(inherited): target 的 Framework Search Paths添加$(inherited)参数会从PROJECT -> Build Settings -> Framework Search Paths里面的路径会被其继承,没有的话不会继承。所以一个项目里面有多个target,使用到了同一个库(Library或Framework)那么为了方便我们可以在target添加继承参数,并且PROJECT统一中添加库的路径。继承的优先级:
      • Platform defaults
      • Project file (描述举例用这个优先级,比较常用)
      • xcconfig file for the Project file
      • Target
      • xcconfig file for the Target
    • recursive:遍历该目录,non-recursive:默认路径设置;不遍历该目录。如果路径的属性为recursive,那么编译的时候在找库的路径的时候,会遍历该目录下的所有子目录的库文件。PS:在搭建项目的时候,可以创建一个专门放库文件的文件夹并且设置其属性为recursive。$(PROJECT_DIR)/**相当于遍历项目文件同级下的所有路径(不推荐使用,项目大的话,影响编译的速度)。
    • Header Search Paths 、User Header Search Paths的参数设置与其相同

参考

Search Paths相关参数说明 --->https://www.jianshu.com/p/9f9c1fd2e8b5

SDK中.a包过大,单独作为一个项目,功能项目引入SDK项目文档 及Search Paths相关参数说明

标签:lan   href   demo   font   root   .com   不用   手动   linked   

原文地址:https://www.cnblogs.com/lulushen/p/9842401.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!