### pod setup命令执行错误解决
!] /usr/bin/git clone https://github.com/CocoaPods/Specs.git master
Cloning into 'master'...
error: RPC failed; curl 56 SSLRead() return error -36
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
***** BEGIN *****
$ sudo xcode-select -switch /Applications/Xcode.app/Contents/Developers
# 后面的地址你可以打开Xcode显示包内容,找到那个文件夹拖到终端里面
$ cd ~/.cocoapods/
$ du -sh * #查看到883M多就可以了
***** END *****
### Foundation报错
# 可能是项目中用到.c文件,而且你也用了.pch文件
同时适用于pch包含的文件不会包含于c文件中
iOS项目工程,添加一个c文件,编译报错,Could not build module 'Foundation'
检查你的*.pch文件,将#import用#ifdef __OBJC__ #endif包裹起来
eg:
#ifdef __OBJC
#import <Masonry/Masonry.h>
#endif
### COCOAPODS安装教程
$ gem sources —-remove https://rubygems.org
$ gem sources -a https://ruby.taobao.org/
$ gem sources -l
$ sudo gem install cocoapods
$ vim Podfile
$ pod install
$ sudo gem install -n /usr/local/bin cocoapods #更新cocoapods
$ sudo gem update --system #更新gem
### 执行pod setup很慢很慢的解决方案
***** BEGIN *****
$ pod install --verbose --no-repo-update
$ pod repo add master https://gitcafe.com/akuandev/Specs.git
$ git clone https://git.coding.net/CocoaPods/Specs.git ~/.cocoapods/repos/master
$ pod repo update
$ cd ~/.cocoapods
$ du -sh #查看pod repo的下载进度
***** END *****
### 安装cocoapods报错
ERROR: Error installing cocoa:
activesupport requires Ruby version >= 2.2.2.
***** BEGIN *****
$ curl -L get.rvm.io | bash -s stable
$ source ~/.bashrc
$ source ~/.bash_profile
$ rvm install 2.2.2
$ rvm -v
***** END *****
### 分析崩溃日志
& tip:Xcode->Product->Analyze => Buildtime 查看分析结果并进行代码优化.
EXC_BAD_ACCESS:通常用于访问了不该访问的内存导致
SIGSEGV: 通常由于重复释放对象导致,这种类型在切换了ARC以后应该已经很少见到了。
SIGABRT: 收到Abort信号退出,通常Foundation库中的容器为了保护状态正常会做一些检测,例如插入nil到数组中等会遇到此类错误。
SEGV:(Segmentation Violation),代表无效内存地址,比如空指针,未初始化指针,栈溢出等
SIGBUS:总线错误,与 SIGSEGV 不同的是,SIGSEGV 访问的是无效地址,而 SIGBUS 访问的是有效地址,但总线访问异常(如地址对齐问题)
SIGILL:尝试执行非法的指令,可能不被识别或者没有权限
SIGTRAP:由断点指令或其它trap指令产生. 由debugger使用。
SIGTRAP代表陷阱信号。它并不是一个真正的崩溃信号。它会在处理器执行trap指令发送。LLDB调试器通常会处理此信号,并在指定的断点处停止运行。如果你收到了原因不明的SIGTRAP,先清除上次的输出,然后重新进行构建通常能解决这个问题
& 在LLDB控制台上键入bt命令打印出回溯信息。
0x8badf00d 在iOS上,它经常出现在执行一个同步网络调用而阻塞主线程的情况。因此,永远不要进行同步网络调用。这个异常一般是因为系统监视器(watch dog)发现超时现象,终止app抛出,比如启动或终止超时,或者是响应系统事件超时。