mac 系统自带ruby,使用cocoapods,直接安装cocoapods就行

终端:$ sudo gem install cocoapods

  {安装较慢是因为有墙,查看ruby镜像列表:$ gem source -l

  可尝试删除原有的镜像,增加taobao镜像,确认仅有一个taobao的哦,因为我遇到的是安装一部分,连接失败,删除原有的就安装完成了

  $ gem source -r https://rubygems.org/   

  $ gem source -a https://ruby.taobao.org/

  可查看确认是否修改成功}

安装cocoapods:$ sudo gem install cocoapods

完成!

第一次执行pods命令,会比较慢,因为cocoapods在保存信息到本地,可以使用$ pod setup命令,等待一段时间安装好了,就能使用pods了

测试:查看AFNetworking框架的版本信息:$ pod search AFNetworking,会出来所有的AFNetworking可用版本的信息

\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

cocoapods的使用

【现在很多第三方都是使用OC写的,所以在swift工程中使用第三方有时会遇到需要兼容的问题,这时候就需要搭桥使用了,不过也不麻烦】

首先是使用终端工程中添加一个podfile文件,首先cd到项目目录下$ vim Podfile, (文件名大小写固定,无后缀)

然后在Podfile中写入:platform :ios,'9.1'

           pod "AFNetworking", "~>2.0"

esc键后输入:wq保存

然后 $ pod install,项目中就添加了AFNetworking框架了,不过这时的工程文件不再使用.xcodeproj文件打开了,而是使用.xcworkspace文件打开

打开工程之后,如果还需要新的框架,只需要在Podfile文件中写入框架名和版本号,再执行一次$ pod install命令就可以了

有了框架,就到使用了,我的工程是swift的,结果使用时,怎么都报错,说没有这个框架。。。

原来是不兼容问题,需要使用一个头文件来搭桥

在项目下创建一个头文件,删掉不需要的,只导入第三方就行,例如:#import "AFNetworking.h"

拿到头文件的路径,然后在工程设置中:搜索bridging,找到Object-C Bridging Header(在buildSetting->all,combined->swift compiler-code generation里面)将头文件路径赋值

完成!

这样就可以直接在swift文件中使用框架了,不需要再导入头文件

关于cocoapods和swift中使用oc第三方的更多相关文章

  1. swift 中使用OC第三方库(以AFNetworking为例)

    首先呢  把你需要的第三方库导入到你的项目中来  具体怎么导入 这不是这篇的重点  看上一篇 废话不多  直接上 (1)在项目中直接建一个 oc 的控制器  然后xcode会提醒你  要不要建造桥接文 ...

  2. Swift中的Masonry第三方库——SnapKit

    在OC开发时我常用一个名叫Masonry的第三方Autolayout库,在转Swift后发现虽然Swift可以混编OC,但总感觉有些麻烦,在Github上发现了这个叫做SnapKit的第三方库,发现使 ...

  3. 如何在swift中实现oc中的分类

    在oc中为了增强已有类的功能,我们经常使用分类.使用分类,我们可以在不破坏原有类的结构的前提下,对原有类进行模块化的扩展. 但是在swift中没有分类这种写法了.相对应的是swift中只有扩展(Ext ...

  4. Swift: 在Swift中桥接OC文件(自己创建的类文件、第三方库文件)

    一.介绍 随着Swift的逐渐成熟,使用swift开发或者混合开发已经成为了一个趋势,本身苹果公司也十分推荐使用Swift这门新语言.目前Swift已经更新到了3.0,估计没有多久4.0就要出来了.那 ...

  5. 在Swift中实现 oc与swift的混编

    在Swift中想要引用OC头文件(import),可采用混编的方法,这里以sqlite为例,采用OC-Swift桥的方式实现添加头文件1引入sqlite数据库的库文件 打开工程配置文件,在build ...

  6. 在 Swift 中调用 OC 代码

    前言 在 Swift 语言中,我们可以使用 Objective-C.C 语言编写代码,我们可以导入任意用 Objective-C 写的 Cocoa 平台框架.Objective-C 框架或 C 类库. ...

  7. Swift中的Masonry第三方库——SnapKit

        在OC开发时我常用一个名叫Masonry的第三方Autolayout库,在转Swift后发现虽然Swift可以混编OC,但总感觉有些麻烦,在Github上发现了这个叫做SnapKit的第三方库 ...

  8. iOS开发:在Swift中调用oc库

    先列举这个工程中用到的oc源码库: MBProgressHUD:半透明提示器,Loading动画等 SDWebImage:图片下载和缓存的库 MJRefresh: 下拉刷新,上拉加载 Alamofir ...

  9. 在swift中使用oc 的代码

    就是需要一个桥文件, 方法一:在swift项目中,新建一个oc的类,这时候,会弹出一个对话框,你点默认的那个选项就行了.然后在新生成的桥文件中导入你所需要的oc代码的头文件就行了. 方法二:但是有时候 ...

随机推荐

  1. Guava学习

    Guava学习笔记目录 Guava 是一个 Google 的基于java1.6的类库集合的扩展项目,包括 collections, caching, primitives support, concu ...

  2. Netty实现服务端客户端长连接通讯及心跳检测

    通过netty实现服务端与客户端的长连接通讯,及心跳检测.        基本思路:netty服务端通过一个Map保存所有连接上来的客户端SocketChannel,客户端的Id作为Map的key.每 ...

  3. Linux学习笔记30——套接字

    一 什么是套接字 套接字是一种通信机制,凭借这种机制,客户/服务器系统的开发既可以在本地单机上进行,也可以跨网络进行. 二 套接字属性 套接字的特性由3个属性确定,它们是:域,类型和协议   1 套接 ...

  4. C++ string 构造的陷阱

    先看代码 #include<iostream> #include<string> using namespace std; int main(int argc, char ** ...

  5. JavaScript高级程序设计7.pdf

    function类型 每个函数都是function类型的实例,函数是对象,函数名是指向对象的指针 function sum(num1,num2) { return num1+num2; } //等价于 ...

  6. TC358746AXBG/748XBG 桥接器说明

    为什么需要这个mipi csi-2 bridge 芯片,由于我们用的sensor 芯片是美光的MT9m021,这颗芯片并不支持MIPI 下面是网上摘录的说明可能解释这个问题: Because of t ...

  7. expect远程登陆hw交换机--测试通过1

    #!/bin/bash #connect_the_hw_switch #by osx1260@.com swip=172.16.56.2 swport= swpasswd='yourswpasswd' ...

  8. Django的请求流程(url)

    一.Django是怎么处理请求的? 当你通过在浏览器里敲http://127.0.0.1:8000/hello/来访问Hello world消息得时候,Django在后台有些什么动作呢? 所有均开始于 ...

  9. 【Android - 框架】之ORMLite的使用

    Android中有很多操作SQLite数据库的框架,现在最常见.最常用的是ORMLite和GreenDAO.ORMLite相比与GreenDAO来说是一个轻量级的框架,而且学习成本相对较低.所以这个帖 ...

  10. nrf51822蓝牙芯片ble_app_proximity程序总结

    近期由于钥匙的事情,研究了下官方自带的ble_app_proximity程序,事实上就是跟防丢有关系的程序. 同一时候也发现了看nordic程序的一些门道,主要还是看协议栈里面的一些service,首 ...