今天,我们将介绍20个在GitHub上非常受开发者欢迎的iOS开源项目,你准备好了吗?

1. AFNetworking

在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目。AFNetworking是一个轻量级的iOS、Mac OS X网络通信类库,现在是GitHub上第三大Objective-C库。它建立在NSURLConnection、NSOperation等类库的基础上,让很多网络通信功能的实现变得十分简单,因此,许多iOS应用开发都会使用到它。

  • 支持HTTP请求和基于REST的网络服务(包括GET、POST、PUT、DELETE等);
  • 支持ARC;
  • 要求iOS 5.0及以上版本;
  • 有一些插件扩展已有的功能,还有一个功能齐全的API;
  • 从URL中获取JSON特别简单。

详情请参考:AFNetworking官网

2. Three20

Three20原本是iPhone版Facebook中所使用的工具库,包括照片查看器等一系列的iPhone UI类集,以及HTTP磁盘缓存等一些通用工具。后来从Facebook iPhone应用中剥离出来,成为了一个深受开发者喜爱的通用框架。

3. facebook-ios-sdk

此前在“GitHub上最受欢迎的开源项目”Android系列文章(一)中,我们曾介绍过允许开发者将Facebook集成到Android应用中的Facebook SDK for Android。Facebook SDK for iOS和它一样,可以让开发者将Facebook相关功能集成到自己的iOS App中。

Facebook无疑是最成功的SNS社区,如果能够让App具有与Facebook集成的功能,那势必会带来非常好的效果。Facebook SDK for iOS项目更新频率很高,想要获取更多关于示例、文档、将SDK集成到App中、源代码等信息,可直接登陆Facebook Developers查看。

4. RestKit

Restkit是一个主要用于iOS上网络通信的开源Objective-C框架,除了发送请求、接受响应这些基本功能外,还附带Core Data,以及将远程JSON映射为本地对象的功能。

主要特点:

  • 可在iOS和Mac OS X的Objective-C中与RESTful Web服务进行简单交互;
  • 包含简单的HTTP Request/Response API;
  • 带有强大的对象映射系统,用于减少代码长度;
  • RestKit可降低JSON/XML的处理的资源消耗,支持通过SBJSON和YAJL进行JSON解析。

详情请参考:Restkit

5. asi-http-request

ASIHTTPRequest是一款极其强劲的HTTP访问开源项目,能够让简单的API完成非常复杂的功能,比如异步请求、队列请求、GZIP压缩、缓存、断点续传、进度跟踪、上传文件、HTTP认证。

ASIHTTPRequest适用于基本的HTTP请求,和基于REST的服务之间的交互。使用Objective-C编写,能够同时用于Mac OS X和iPhone应用中。

详情请参考:all-seeing.ASIHTTPRequest

6. cocos2d-x

在《直接拿来用!最火的Android开源项目(一)》中,我们已经非常详细地介绍了cocos2d-x开源项目。cocos2d-x支持iOS、Android、Windows Phone 8、Bada、BlackBerry、Marmalade、Windows、Linux等多个平台。

详情请参考:cocos2d-x

7. cocos2d-iphone(cocos2d)

cocos2d for iPhone是一个开源框架,用于为iPod Touch、iPhone、iPad及Mac OS X构建2D游戏、演示程序及其他图形交互式应用。基于cocos2d设计,使用相同的API,但不同于cocos2d使用Python,cocos2d for iPhone是使用Objective-C实现的。

cocos2d for iPhone主要特性:

  • 免费
  • 易于使用
  • 社区支持

详情请参考:cocos2d-iphone

8. cocos2d-iphonejpsarda

该项目是对cocos2d for iPhone的扩展。

9. GPUImage

GPUImage是一个基于GPU图像和视频处理的开源iOS框架。

主要功能如下:

  • 提供各种各样的图像处理滤镜,并且支持照相机和摄像机的实时滤镜;
  • GPUImage顾名思义,是基于GPU的图像加速,因此图像处理速度非常快,并且能够自定义图像滤镜;
  • 支持ARC。

10. MonoGame

MonoGame是一个Microsoft XNA 4.x Framework的开源跨平台实现。此前在Android开源项目系列文章(一)中我们也进行了详细的介绍。

MonoGame支持平台:

11. Nimbus

Nimbus是一个开源的iOS框架,比起Three20,Nimbus的文档更为全面、丰富,能够实现很多非常炫的界面特效。因此,开发者可以借助Nimbus来降低项目设计的复杂度。

12. cheddar-ios

Cheddar是一个简单即时的任务管理器,Cheddar for iOS是Cheddar的iOS客户端,通用于iPhone和iPad。

  

开发者可以直接登陆App Store下载该应用。

13. ViewDeck

IIViewDeckController能够实现类似于Path 2.0 的视图左右滑动的效果,支持向左或向右顺滑的滑动操作。

 

点击链接,查看视频演示(常规演示灵敏性演示),注意,需FQ的哟。

14. ShareKit

ShareKit是iPhone开发的第三方接口,允许你一键分享文字、图片、网址、文件等内容到Facebook、Twitter、Delicious、Tumblr、Google Reader等第三方网站上。

详情请参考:getsharekit

15. GMGridView

GMGridView是一款开源的iOS(iPhone/iPad)表格视图,允许用户手势对表格单元进行排序,在单元格需要展示时才进行装载,这样极大地提高了表格的效率。其中的伸缩/旋转/平移手势能够让用户改变视图,还能够实现从CellView到全屏的切换。

详情请参考:gmoledina

16. QuickDialog

QuickDialog可以帮助开发者快速创建复杂的表单,实现包括登录界面在内的各种样式的TableView输入界面,此外,还可以创建带有多个文本域的表格及项目。

 

开发者可以直接登陆QuickDialog官方网站,获取更多信息或文档。

17. appirater

Appirater是一个可以直接使用到任何iPhone应用(iOS4.0及以上)中的开源类,用于提醒用户在打开App时,对应用进行评论或打分。

详情请参考:Appirater group

18. SVProgressHUD

SVProgressHUD能够实现多种HUD效果,多用于程序正在执行耗时较长的任务,需要用户等待。除了显示等待的HUD,还可以显示命令执行成功或者失败的HUD。

19. Reader

该项目能够让iOS开发者轻而易举地在iOS设备屏幕上显示PDF文件。代码通用,不需要任何XIB(因为所有UI元素都是代码生成的,具有极大的灵活性),运行于iOS 4.0及其以上版本设备中,同时还支持所有Retina Display设备。

 

支持:

  • 诸如iBooks等的文档导航;
  • 设备全方位旋转;
  • 对PDF进行加密(密码保护);
  • PDF链接(URI及跳转页面);
  • PDF旋转页面。

20. CocoaAsyncSocket

CocoaAsyncSocket提供了十分强大而又易用的Mac OS X及iOS异步套接库,支持TCP和UDP,其中,AsyncSocket类是支持TCP的,AsyncUdpSocket是支持UDP的。

AsyncSocket是封装了CFSocket和CFSteam的TCP/IP socket网络库,提供异步操作。AsyncUdpSocket是UDP/IP socket网络库,包装自CFSocket。

以上为GitHub上最受欢迎的iOS开源项目TOP20,敬请期待GitHub上最受欢迎的iOS开源项目系列(二)。

ios开源东西的更多相关文章

  1. iOS -- 开源项目和库

    TimLiu-iOS 目录 UI 下拉刷新 模糊效果 AutoLayout 富文本 图表 表相关与Tabbar 隐藏与显示 HUD与Toast 对话框 其他UI 动画 侧滑与右滑返回手势 gif动画 ...

  2. iOS开源项目周报0105

    由OpenDigg 出品的iOS开源项目周报第四期来啦.我们的iOS开源周报集合了OpenDigg一周来新收录的优质的iOS开发方面的开源项目,方便iOS开发人员便捷的找到自己需要的项目工具等. He ...

  3. iOS开源项目周报1229

    由OpenDigg 出品的iOS开源项目周报第三期来啦.我们的iOS开源周报集合了OpenDigg一周来新收录的优质的iOS开发方面的开源项目,方便iOS开发人员便捷的找到自己需要的项目工具等. Ma ...

  4. iOS开源项目周报1222

    由OpenDigg 出品的iOS开源项目周报第二期来啦.我们的iOS开源周报集合了OpenDigg一周来新收录的优质的iOS开发方面的开源项目,方便iOS开发人员便捷的找到自己需要的项目工具等. io ...

  5. iOS开源项目周报1215

    由OpenDigg 出品的iOS开源项目周报第一期来啦.我们的iOS开源周报集合了OpenDigg一周来新收录的优质的iOS开发方面的开源项目,方便iOS开发人员便捷的找到自己需要的项目工具等. PY ...

  6. 直接拿来用!最火的iOS开源项目

    1. AFNetworking 在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目.AFNetworking是一个轻量级的iOS.Mac OS X网络通信类库,现在是G ...

  7. 27个提升效率的iOS开源库推荐

    DZNEmptyDataSet(UI,空表格视图解算器) PDTSimpleCalendar(UI,drop-in日历组件) MagicalRecord(实施活跃记录模式的Core Data助手) C ...

  8. (转)直接拿来用!最火的iOS开源项目(二)

    “每一次的改变总意味着新的开始.”这句话用在iOS上可谓是再合适不过的了.GitHub上的iOS开源项目数不胜数,iOS每一次的改变,总会引发iOS开源项目的演变,从iOS 1.x到如今的iOS 7, ...

  9. (转)直接拿来用!最火的iOS开源项目(一)

    1. AFNetworking 在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目.AFNetworking是一个轻量级的iOS.Mac OS X网络通信类库,现在是G ...

随机推荐

  1. laravel数据库操作sql语句用Eloquent ORM来构造

    现在有查询语句: SELECT users.sNmame, users.iCreateTime, users_ext.iAge, users_ext.sSex FROM users LEFT JOIN ...

  2. atitit.信息系统方案规划 p71.doc

    [信息系统方案规划 ] 版本 v2 2015-7-1 变更记录 日期 修改人 版本 变更事由 说明 2015.07 艾龙 1.0 初创 2015.07 艾龙 2.0 添加接口 1. 业务功能与流程设计 ...

  3. 单双口RAM

    // Quartus II Verilog Template// Simple Dual Port RAM with separate read/write addresses and// singl ...

  4. JSON的String字符串与Java的List列表对象的相互转换

    1.JSON的String字符串与Java的List列表对象的相互转换 在前端: 1.如果json是List对象转换的,可以直接遍历json,读取数据. 2.如果是需要把前端的List对象转换为jso ...

  5. redis命令_SETEX

    SETEX key seconds value 将值 value 关联到 key ,并将 key 的生存时间设为 seconds (以秒为单位). 如果 key 已经存在, SETEX 命令将覆写旧值 ...

  6. linux 从百度网盘下载文件的方法

    linux 从百度网盘下载文件的方法 发表于2015 年 月 日由shenwang 方法1.wget wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括 ...

  7. 关于linux PPA源问题

    添加PPA: 1.首先进入ubuntu系统,system—>administration—>update manager—>setting,在软件源界面,点击other softwa ...

  8. oracle中查看正在运行的并行进程

    select count(*) from v$px_process a where a.STATUS='IN USE';

  9. linux学习笔记26--命令wc

    Linux系统中的wc(Word Count)命令的功能为统计指定文件中的行数.字数.字节数,并将统计结果显示输出. 1.命令格式: wc [选项]文件... 2.命令功能: 统计指定文件中的行数.字 ...

  10. hive export import命令

    EXPORT TABLE stu_p TO 导入表(必须明白导出表,导出表是将表的元数据,数据导出到hdfs上.)讲一个导出的表导入到数据库中,这个hdfs_path 是一个导出表的文件夹 impor ...