博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Xcode中Groups和Folder的区别
阅读量:6476 次
发布时间:2019-06-23

本文共 727 字,大约阅读时间需要 2 分钟。

以前一直没有在意这个问题,今天”中奖”了 ;(

在Xcode文件夹视图中会发现2种颜色的文件夹图标:黄色和蓝色.

黄色表示组(groups),蓝色表示文件夹(folder).

组只是逻辑上定义,其中的文件在生成的App包里还是散开在根目录中,而文件夹会在最终的App包里生成对应的文件夹层次.

而且在Xcode 6.4中,如果想完全更新(update)App中的资源,不能简单点击Product->clean或clean build folder文件菜单,这样最新做的删除可能得不到更新.

取个例子:原来一个xxx.lua文件在Prj的xxx组中,这时该文件在生成App的根目录中,原因前面已经说了.

于是我们将xxx.lua从Xcode中删除,也从物理磁盘上删除.编译运行App:app包中还是有xxx.lua…

本猫是这样做彻底更新的:

  1. 停止运行的app
  2. Product->clean和clean build folder
  3. 删除该项目对应的DerivedData文件夹
  4. 重新编译运行

再说一个问题.

代码中访问xxx.lua的路径为”xxx/xxx.lua”,这时自然找不到文件.如果把代码中的路径改为”xxx.lua”是没问题的,但我们不想修改代码,不是吗!?

于是自作聪明的猫猪找到实际的App包,在根目录中新建一个xxx目录,然后将xxx.lua放进去.然后编译运行App,发现还是找不到路径,到实际App包里去看,路径里的文件是有的,路径都是对的,但是不行…此路不通.

估计app还做了其他检查,它认准的是Xcode生成的包中的内容.

所以如前所述正确的做法是在Prj中建立一个文件夹而不是groups!本例中,要认准”蓝瓶”的,才是OK的!

这里写图片描述

你可能感兴趣的文章
SHOW CREATE DATABASE Syntax
查看>>
rsync常见问题及解决办法
查看>>
MySQL日期 专题
查看>>
C#中禁止程序多开
查看>>
分布式缓存Redis使用以及原理
查看>>
Activity竟然有两个onCreate方法,可别用错了
查看>>
Linux经常使用命令(十六) - whereis
查看>>
core dump相关
查看>>
Linux五种IO模型
查看>>
Bootstrap技术: 模式对话框的使用
查看>>
小知识,用myeclipes找jar
查看>>
in-list expansion
查看>>
设计原则(四):接口隔离原则
查看>>
基于react的滑动图片验证码组件
查看>>
iOS快速清除全部的消息推送
查看>>
java单例模式深度解析
查看>>
【学习笔记】阿里云Centos7.4下配置Nginx
查看>>
VuePress手把手一小時快速踩坑
查看>>
dnsmasq安装使用和体验
查看>>
学习constructor和instanceof的区别
查看>>