XCode的使用记录

1、编译提示Building for iOS Simulator, but the linked and embedded framework 或者 

building for ios simulator, but the linked library libxlua.a was built for ios

解决:Buil Settings - Build Options - Validate Workspace 改为Yes
貌似Validate Workspace改为Yes之后编译完成,再改回No,也可以正常运行

2、unity导出工程到XCode模拟器运行时提示:Duplicate interface definition for class 'CAMetalLayer'

解决:找到UnityMetalSupport.h文件,将@interface CAMetalLayer : CALayer 改为 @interface CAMetalLayer (category)

3、No matching function for call to ‘objc_msgSend’

解决:使用runtime的 objc_msgSend 方法时 需要设置 Enable Strict Checking of objc_msgSend Calls 为 No

4、Typedef redefinition with different types ('void *' vs 'struct __CVMetalTextureCache *')

解决:找到CVTextureCache.mm文件,将所有CVMetalTextureRef替换为UCVMetalTextureRef

5、Command PhaseScriptExecution failed with a nonzero exit code

解决:菜单File->Project Settings->Shared Project Settings,将Build System由New Build System(Default)改为Legacy Build System(Deprecated)

6、/Users/administrator/Library/Developer/Xcode/DerivedData/Unity-iPhone-gfelmwsayndlnmgoygyvadjvzdjv/Build/Intermediates.noindex/Unity-iPhone.build/ReleaseForRunning-iphonesimulator/Unity-iPhone.build/Script-033966F41B18B03000ECD701.sh: line 2: /Users/administrator/LaoQ/FaBuJi/laoqU3dBuild/iOSProject/iOSProject/MapFileParser.sh: Permission denied

解决:直接给权限,命令台输入:chmod -R 777 项目文件夹路径

7、文件的添加尽量用 Create groups 和 copy item if needed,详情看区别:create groups 与 create folder references选哪个? - 简书

8、Xcode秒级build success 但未能在手机上安装解决:清理Xcode缓存,或命令shift+commad+k  清理xcode缓存

9、$(SRCROOT)和$(PROJECT_DIR)和$(inherited)和${PODS_ROOT}

$(PROJECT_DIR)代表的是整个项目,$(SRCROOT)代表的是项目根目录下

左边的animationDemo是PROJECT_DIR,一个完整工程
右边的animationDemo是SRCROOT

$(inherited):继承上一级或依赖项的配置。通过CocoaPods集成的项目,$(inherited)将会包含Pods.xcodeproj中的配置

${PODS_ROOT}:pod目录

recursive:会在相应的目录递归搜索文件

non-recursive:非递归

10、有文件的物理地址找不到变红提示,点击Identity and Type下的x按钮消除(应该是直接去掉了其旧的无效物理地址)

11、xcode的命令:iOS自动化打包 ---- xcodebuild 命令详解 - 简书

12、xcode自动打包的相关文件:ios开发证书,描述文件,bundle ID的关系 - 简书

13、xcode出包四种描述文件区别:Xcode打包archives的四个选项的具体区别 - 简书Xcode打包生成ipa四个选项的具体区别 - 简书

14、iOS测试包实现在线安装:iOS_实现类似蒲公英、fir等发包平台 通过URL分发内测APP_wzz_1992的博客-CSDN博客 和 不通过App Store实现ios应用分发下载安装 - FeMiner - 博客园 和 实现 iOS App 在线安装(局域网OTA) - 简书

15、Unity打出的工程代码比较多,如果是手动添加引用可以先合并再添加固定引用到XCode:XCode 自动添加代码文件到项目 - 某Z的博客(未测试),虽说Unity可以用导出工程设置一些xcode工程属性配置,但是有一些有问题或者没有或者说需要更高版本才能对应到新版的xcode功能,避免受限于Unity,笔者通过PBXProjectHelper自动添加依赖引用PBXProjectHelper: 一个用Python脚本实现的操作PBXProj文件(XCode项目配置文件)的工具类库

16、真机的无线调试:Xcode真机设备无线调试_yanhaijunyan的博客-CSDN博客(需要手机开启密码)

17、Cocoapods中文镜像地址:CocoaPods | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

18、XCode安装Pod:

(1).安装rvm,无论本地有没有,ruby也一样

curl -L get.rvm.io | bash -s stable

source ~/.bashrc

source ~/.bash_profile

(2). 列出rvm的所有版本

rvm list known 

(3).选一个安装,比如我选择2.6.0的

rvm install 2.6.0

(4).如果有错误,尝试安装下面这句,安装homebrew,没错误可以不装!

安装homebrew

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

(5).设置默认的版本

rvm use 2.6.0 —default

若在Jenkins等构建系统上面使用pod提示找不到pod可以使用下面命令,然后重新安装pod

rvm use system

(6).安装Cocoapods

sudo gem install -n /usr/local/bin cocoapods

pod setup

(7).克隆Pod Specs(失败提示OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443试试打开页面github登陆一下账号:https://blog.csdn.net/HuangXiongjin/article/details/113941907)

git clone https://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/Specs

(8).使用pod

去到工程目录执行:

pod install --repo-update --verbose

19、mac反复提示无法验证开发者处理:在终端执行如下指令sudo spctl --master-disable,此时在设置里的安全性于隐私就会多出一项:允许从一下位置下载的APP:任何来源

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值