最近做项目,抛弃了之前常用的objective语言,开始使用新的swift语言,
首先遇到的问题就是网络请求和Json解析,经过一番考察,决定使用Alamofire做网络请求,使用SwiftJson做Json解析
Almofire和SwiftJson,我是使用carthage从网上下载,详细的步骤可以参照网络上的其他教程,这里,我只列出用的几个命令:
brew update
brew install carthage(如果已经安装过,需要更新,则使用命令:brew upgrade carthage)
进入到carthage主目录:
vi Cartfile ,添加:
github "Alamofire/Alamofire" ~> 4.4 然后运行命令: carthage update之后经过等待,alamofire就已经下载到本地,
根据类似得到提示:*** xcodebuild output can be found in /var/folders/2p/2gxdy6s55rl0b7dy9m8m2r540000gn/T/carthage-xcodebuild.4YGWU1.log
去日志文件,查看对应的下载地址,将Products下编译好的对应文件,导入到自己工程即可使用,
SwiftJson的下载流程与上面完全相同:
只需在Cartfile,添加一行:github "SwiftyJSON/SwiftyJSON"
然后执行:carthage update
这里要着重说明的是如何将真机和模拟器framework合并,
拿Alamofire来说:
为方便起见,我将Products目录整个复制到桌面:
通过命令:$ lipo -info /Users/njwangdou1/Desktop/Products/Release-iphonesimulator/Alamofire.framework/Alamofire 结果如下:Architectures in the fat file: /Users/njwangdou1/Desktop/Products/Release-iphonesimulator/Alamofire.framework/Alamofire are: i386 x86_64
通过命令:lipo -info /Users/njwangdou1/Desktop/Products/Release-iphoneos/Alamofire.framework/Alamofire 结果如下:Architectures in the fat file: /Users/njwangdou1/Desktop/Products/Release-iphoneos/Alamofire.framework/Alamofire are: armv7 arm64
下面合并framework:
$ lipo -create -output Alamofire ./Release-iphoneos/Alamofire.framework/Alamofire ./Release-iphonesimulator/Alamofire.framework/Alamofire
查看新和成的文件支持的架构:
lipo -info Alamofire
结果如下:
Architectures in the fat file: Alamofire are: i386 x86_64 armv7 arm64
然后进入如下路径:
第一步:
cd /Users/njwangdou1/Desktop/Products/Release-iphoneos/Alamofire.framework/Alamofire
将新生成的Alamofire覆盖掉旧有的文件
第二步:
进入如下目录
cd /Users/njwangdou1/Desktop/Products/Release-iphonesimulator/Alamofire.framework/Modules/Alamofire.swiftmodule/
复制里面的文件到如下路径:
/Users/njwangdou1/Desktop/Products/Release-iphoneos/Alamofire.framework/Modules/Alamofire.swiftmodule/
OK
退回到目录Users/njwangdou1/Desktop/Products/Release-iphoneos
则此时的Alamofire.framework就支持真机和模拟器调试了