IOS使用carthage小结
2016-01-19 15:35
260 查看
carthage简介
Carthage 是一个依赖管理工具,替代CocoaPods,较CocoaPods来说不牵扯 XCode 项目文件,轻耦合,更灵活。Carthage 是由 Swift 语言写的,只支持动态框架,只支持 iOS8+。
carthage安装
使用Homebrew来安装carthage
安装homebrew:直接打开终端,粘贴:ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"[/code]
然后回车,让系统自行安装就好了
ps:如果要求用户输入密码什么的,会发现输入没有反应的话,是因为密码输入不会显示,连*都不会显示,直接输入完成回车就好。
然后在终端输入brew update回车获取最新版本
然后继续输入sudo brew install carthage安装carthage(卸载命令:sudo brew uninstall carthage)
不过这个时候安装可能会报如下错误
Error: Could not create /usr/local/Cellar
Error: Permission denied -/Library/Caches/Homebrew/Formula/carthage.brewing
解决方法 :
解决第一个Error
1 -> 命令:sudo chown -R $USER /usr/local
解决第二个Error
2 -> 命令:sudo chown -R $USER /Library/Caches/Homebrew/
最终brew install carthage就静静的等待安装就行了
至此 carthage 就安装完成了新建Cartfile文件
第一步:进入你要创建Cartfile文件的目录(可选)
这个目录看个人喜好自己设定,我喜欢将这个目录设定为我项目的目录中,毕竟是给我这个项目添加依赖嘛。
OSX 采用的Unix文件系统,所有文件都挂在跟目录 / 下面,所以不在要有Windows 下的盘符概念。
你在桌面上看到的硬盘都挂在 /Volumes 下。ls //查看当前目录列表 cd dirname //进入dirname目录 ls /Volumes/ //查看盘符
第二步:创建Cartfile文件
输入以下命令:vim Cartfile
会看见这个画面然后输入你要依赖的项目,例如我想要依赖Alamofire:
输入好了之后按ESC
再输入:wq然后回车(注意要英文输入)
这样就把文件创建好了
ps:vim命令集>= 1.0 for “at least version 1.0” 1.0以上 ~> 1.0 for “compatible with version 1.0” 最好是1.0, == 1.0 for “exactly version 1.0” 必须是1.0 什么也不写,默认是最新版本
示例:# Require version 2.3.1 or later github "ReactiveCocoa/ReactiveCocoa" >= 2.3.1 # Require version 1.x github "Mantle/Mantle" ~> 1.0 # (1.0 or later, but less than 2.0) # Require exactly version 0.4.1 github "jspahrsummers/libextobjc" == 0.4.1 # Use the latest version github "jspahrsummers/xcconfigs" # Use the branch github "jspahrsummers/xcconfigs" "branch"终端运行
终端执行命令:carthage update
等待执行完成,然后会发现在该目录下多出来几个文件依赖
打开 Carthage文件夹 进入Bulid。以iOS为例,进入iOS文件夹找到*.framework拖到项目中
然后在项目中general–>Embedded Binaries 中点击+ –>add other –>选中*.framework即可
以上这个过程作为小白的我弄了好久,各种不顺,在此记录一下,以备后用!
测试:
因为我安装的是:Alamofire 网络框架
在测试的时候执行代码:Alamofire.request(.GET, "http://httpbin.org/get", parameters: ["foo": "bar"]) .response { (request, response, data, error) in print(request) print(response) print(error)
会报错, 提示禁止http明文传输
这时候在info.plist
添加一行:app transport Security setting
再点击+号添加:
allow arbitrary Loads就行了
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- Apple Swift学习教程
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- 介绍 Fedora 上的 Swift
- 讲解iOS开发中基本的定位功能实现
- js判断客户端是iOS还是Android等移动终端的方法
- IOS开发环境windows化攻略
- 浅析iOS应用开发中线程间的通信与线程安全问题
- Swift中实现点击、双击、捏、旋转、拖动、划动、长按手势的类和方法介绍
- Swift编程中的泛型解析
- Swift中定义二维数组的方法及遍历方法示例
- 检测iOS设备是否越狱的方法
- .net平台推送ios消息的实现方法
- 探讨Android与iOS,我们将何去何从?