Xcode相关
Xcode相关的路径
- Provisioning Profiles存放路径:~/Library/MobileDevice/Provisioning Profiles
- 所有模拟器(包括历史模拟器):~/Library/Developer/CoreSimulator/Devices
清理Xcode占用容量
- iOS DeviceSupport:~/Library/Developer/Xcode/iOS DeviceSupport
说明:在连接设备调试时,会自动在该路径下生成该设备系统版本的Symbols目录,其中含有系统动态库,比如动态库UIKit的路径为~/Library/Developer/Xcode/iOS DeviceSupport/11.4 (15F79)/Symbols/System/Library/Frameworks/UIKit.framework/UIKit
建议:保留经常调试的设备的iOS系统版本,不经常使用的系统版本都删掉。 - Archives:~/Library/Developer/Xcode/Archives
说明:打包生成的Archives文件,这个不可恢复,删除后Archives的文件都会消失。
建议:保留有效的打包文件,备份dSYM文件。 - DerivedData:~/Library/Developer/Xcode/DerivedData
说明:运行项目工程产生的缓存,删除文件夹中的内容会删除build生成的项目索引、build输出以及日志,重新打开项目时会重新生成。
建议:全部删除,之后运行程序的时候会重新生成的。
真机调试
- 真机包存放路径:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport,一个真机包带有两个文件:DeveloperDiskImage.dmg.signature和DeveloperDiskImage.dmg
- github上收集的真机包:iPhoneOSDeviceSupport(或者iOS-DeviceSupport),往路径添加完真机包后,记得关闭Xcode,然后重新启动Xcode运行项目
- 每个版本的Xcode都带有适应当时最新iOS系统的SDK,iPhone SDK存放路径:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk
github上收集的iOS系统的SDK:iPhoneOS.sdk
TARGETS Build Settings
- Library Search Paths:设置静态库(比如.a、私有的.framework)或动态库(.dylib)的路径。
如果报"directory not found for option '-L/..."错误,说明Library Search Paths没有配置好。 - Header Search Paths:设置静态库或动态库的头文件(即.h文件)的路径。
如果项目是用cocoaPods管理第三方库,比如项目中使用了AFNetworking库,cocoaPods会自动配置好AFNetworking库的头文件路径,不需要开发者区手动配置,路径内容为:
$(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking"
但如果是使用非cocaPods管理的库(比如自己编译的.a文件),就需要手动配置库的头文件的路径,比如路径内容为:
$(SRCROOT)/pjproject/pjlib/include $(SRCROOT)/pjproject/pjlib-util/include
否则会报找不到头文件的错误(一般会在#include <>
地方报错)
Xcode命令
- 查看Xcode支持的SDKs版本命令(包括iOS、iOS Simulator、macOS、tvOS):xcodebuild -showsdks
- 查看当前使用Xcode版本路径:xcode-select -p
- 更改当前使用Xcode版本路径:sudo xcode-select -s /Applications/Xcode9.app/Contents/Developer
Xcode运行问题
- 若Xcode勾选了自动管理签名(automatically manage signing)且更改过Signing & Capabilities,则Xcode会自动在该路径下生成对应的描述文件,可通过创建时间和内容来查看描述文件对应的Bundle Identifier、App ID等信息。
如果钥匙串有可用的证书,但Signing & Capabilities却爆红,Command+R遇到错误"Your account already has a signing certificate for this machine but it is not present in your keychain" 或 "no identity found Command CodeSign failed with a nonzero exit code",可能是Xcode抽风了,完全退出Xcode,重新打开项目,Xcode会在~/Library/MobileDevice/Provisioning Profiles路径下生成描述文件,且能正常链接上钥匙串中的证书了。
Xcode相关的更多相关文章
- xcode相关配置
Xcode将全部供应配置文件(包括用户手动下载安装的和Xcode自动创建的Team Provisioning Profile)放在目录~/Library/MobileDevice/Provisioni ...
- Xcode相关整理
阅读目录 javadoc格式文档注释插件 xcodekit插件 常用快捷键 XCode中快捷健字符与MAC键盘对应关系: 添加自动生成格式为javadoc文档注释的插件VVDocumenter 首先推 ...
- Xcode相关常用快捷键搜集
command + L: 跳转到指定行 control + i: 格式化代码 command + control + 上/下 在*.h和*.m之间切换. command + control ...
- Xcode常用快捷键 (转载)
Xcode快捷键,工欲善其事,必先利其器.mac的键盘和ms的还是有些不一样,得适应一下下. 新建项目 command+shift+n 新建文件 command+n 新建空文件 command+con ...
- iOS 打包上传AppStore相关(1)-相关证书配置
最近一个老项目需要更新迭代,一个新的项目需要上线.有一些自己出现的BUG,也有一些没搞懂到处翻资料的问题.在此想做一个总结,写一下总体步骤,尽可能的详细一些,以及自己的一些理解.有很多步骤因为我们查阅 ...
- Xcode.Subproject.And.Framework
1. Easy Xcode Static Library Subprojects and Submodules http://www.blog.montgomerie.net/easy-xcode-s ...
- xcode 快捷键大全、XCode常用快捷键图文介绍
其实就是设置里面的快捷键变成了文字版,刚开始用Xcode是不是发现以前熟悉的开发环境的快捷键都不能用了?怎么快捷运行,停止,编辑等等.都不一样了.快速的掌握这些快捷键,能提供开发的效率. 其实快捷键在 ...
- Xcode中断点的使用
注:本文由破船译自:albertopasca.本文由HoNooD在iosfeed站点上做了推荐. 这里先推荐两篇Xcode相关的文章: Xcode Code Snippets iOS调试 — 基本技巧 ...
- 在Azure DevOps Server (TFS)的流水线中编译和测试Xcode移动应用(iPhone)
概述 Xcode是开发基于苹果macOS系统的桌面应用和移动应用的主要IDE工具.使用Azure DevOps Server (原名TFS)系统中的pipelines流水线功能,可以方便的集成Xcod ...
随机推荐
- Mybatis--级联(一)
级联是resultMap中的配置. 级联分为3种 鉴别器(discrimination):根据某些条件采用具体实现具体实现类级联,如体检表根据性别去区分 一对一:学生和学生证 一对多:班主任和学生. ...
- java 常用Bean 转换工具类
package com.hnf.framework.utils; import com.alibaba.fastjson.JSON; import com.fasterxml.jackson.data ...
- mybaits源码分析(一)
一.源码下载 1.手动编译源码 为了方便在看源码的过程中能够方便的添加注释,可以从官网下载源码编译生成对应的Jar包,然后上传到本地maven仓库,再引用这个Jar. 首先需要编译打包parent项目 ...
- nacos在nginx下集群以及数据库问题
持久化mysql时指定数据库编辑application.properties spring.datasource.platform=mysql db.num=1 db.url.0=jdbc:mysql ...
- 眼见为实,看看MySQL中的隐藏列!
在介绍mysql的多版本并发控制mvcc的过程中,我们提到过mysql中存在一些隐藏列,例如行标识.事务ID.回滚指针等,不知道大家是否和我一样好奇过,要怎样才能实际地看到这些隐藏列的值呢? 本文我们 ...
- dotnet OpenXML 读取 PPT 内嵌 ole 格式 Excel 表格的信息
在 Office 中,可以在 PPT 里面插入表格,插入表格有好多不同的方法,对应 OpenXML 文档存储的更多不同的方式.本文来介绍如何读取 PPT 内嵌 ole 格式的 xls+ 表格的方法 在 ...
- 记录Mac下使用Charles抓包
抓包 简述 在网络应用如后端系统,app,小程序等的开发过程中,免不了接口可能会报错,但是一般在app中或者小程序中没有便捷的console控制台,而且线上环境也不会开启调试模式,所以想看一下接口的响 ...
- 手撕LRU缓存
面试官:来了,老弟,LRU缓存实现一下? 我:直接LinkedHashMap就好了. 面试官:不要用现有的实现,自己实现一个. 我:..... 面试官:回去等消息吧.... 大家好,我是程序员学长,今 ...
- 分布式消息流平台:不要只想着Kafka,还有Pulsar
摘要:Pulsar作为一个云原生的分布式消息流平台,越来越频繁地出现在人们的视野中,大有替代Kafka江湖地位的趋势. 本文分享自华为云社区<MRS Pulsar:下一代分布式消息流平台全新发布 ...
- java设计模式—单例模式(包含单例的破坏)
什么是单例模式? 保证一个了类仅有一个实例,并提供一个访问它的全局访问点. 单例模式的应用场景? 网站的计数器,一般也是采用单例模式实现,否则难以同步: Web应用的配置对象的读取,一般也应用单例模式 ...