说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

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

HTML文档下载 WORD文档下载 PDF文档下载
苹果App Store本身所具有的独特DNA也催生了众多iOS开源项目,开发者可以直接将这些项目运用到自己的App中,从而实现各种功能或特效。今天,我们将介绍20个在GitHub上非常受开发者欢迎的iOS开源项目。

在结束了GitHub平台上“最受欢迎的Android开源项目”系列盘点之后,我们正式迎来了“GitHub上最受欢迎的iOS开源项目”系列盘点。今天,我们将介绍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应用中。

详情请参考: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-iphone(jpsarda)

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

9. GPUImage

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


主要功能如下:

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

10. MonoGame

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

MonoGame支持平台:

  • iOS(包括Ritina Display)
  • Android
  • Windows(OpenGL)
  • Mac OS X
  • Linux
  • Windows Store Apps(Windows 8、Windows RT)
  • Windows Phone 8
  • PlayStation Mobile(目前仅支持2D)
  • OUYA

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 的视图左右滑动的效果,支持向左或向右顺滑的滑动操作。

 

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

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开源项目系列(二)。

(文/唐小引 责编/张宁)

系列阅读:

直接拿来用!最火的Android开源项目(一)

直接拿来用!最火的Android开源项目(二)

直接拿来用!最火的Android开源项目(三)

width(val)-JQuery API width()-JQuery API DOM-JQuery API addClass(class)-JQuery API attr(key,fn)-JQuery API attr(key, value) -JQuery API attr(name)-JQuery API attr(properties) -JQuery API html(val)-JQuery API html()-JQuery API removeAttr(name)-JQuery API removeClass(class)-JQuery API text(val)-JQuery API text()-JQuery API toggleClass(class)-JQuery API val(val)-JQuery API val-JQuery API after(content) -JQuery API append(content) -JQuery API appendTo(expr) -JQuery API before(content)-JQuery API clone(deep) -JQuery API empty()-JQuery API insertAfter(expr)-JQuery API insertBefore(expr) -JQuery API prepend(content)-JQuery API prependTo(expr)-JQuery API remove(expr)-JQuery API wrap(elem)-JQuery API wrap(html) -JQuery API add(elements) -JQuery API 求教,急! 初学asp,问个简单的问题吧:怎么样知道客户端的时间? strus的配置和使用,我用jdevelop, ADO+MSSQL对DataSet中Record定位 欢迎讨论,关于水晶报表实现:折线图,或者柱形图问题 在线求助:如何读取B端操作系统信息和浏览器信息? 系統用戶使用權限的設計 combox 问题 急寻MAYA编程高手 服务器端有一个很大的XML(10M)文件,怎样从client端读取? CMainFrame 的窗口句柄怎么得到 从数据库读出文本如何保持原来格式 ? 在winform中,请教关于combobox的一个小问题 Stream Write error??????????? 存储过程的and和or连用 谁有新浪或网易等的短信网关接口? 请问如何在水晶报表里面定义一个全局变量?谢谢 如何配置SMTP服务 使用触发器时想到的 为什么要实现双接口 求DOM(DOMAIN OBJECT MODEL)的详细资料,顶着有分 winxp 在重启时总是提示:"此媒体的类型产品号无效请用正确的cd重新安装",系统进不去! 那位老大给仍一个visual assist 6.0的key,等待中。。。。 请问哪儿有类似于TDBchart数据显示的图形控件? 服务器端有一个很大的XML(10M)文件,怎样从client端读取? 业务导肮? 安全操作系统,谁能用? delphi7中怎么关闭一个子窗体,然后又能正常创建 急!请问怎样把SimensSDK和CodeWarrior整合起来? 江湖救急! 还是关于两个时间之间的处理的问题,大家看看! 高分求助:关于OPENFORM的问题! <秦>(全本) :am(酒徒) 强烈推荐 安全操作系统,谁能用? 高手助我!!!如何从数据库中的日期格式中分别取得年、月、日??? 关于拦截文件操作的API的钩子程序求教:qq:55020921(再问) 我用asp.net开发的网站。客户机没装。net框架,能不能访问网站。 跨年的问题 在线等 谢谢 嗨!哥们们!中科大美国加里福尼亚州州立大学计算机硕士张左伟“软件测试管理体系与案例分析”免费公开课去吗???? 求代码(屏蔽源代码的),给高分 评职称,大学的时候没过4级,能评吗? 急!请问怎样把SimensSDK和CodeWarrior整合起来? 有几个问题请高手指教,多谢,多谢!!! 为什么www.989888.com 不能注册了? 关于二级菜单的问题 请教 如何做到刷新页面后不处理ASP程序 一个小问题求助! 如何考察体系架构 【待结贴】听说有人密谋要刺杀雍亲王?请看看英明神武的雍亲王无畏的回答: 一个基本问题! 使用.NET平台开发可以使用Rose进行设计吗? 思想统一的世界假设每个人的思想都一样 那么就不会纷争战争 世界发展的步伐就一致 那样多好 真希望全球早点统一啊! 地球表面上的物体和地球卫星,要高考了,快.>. 应用第六题 gu是三声,ge是二声,这怎么拼呀拼音 作文暑假中的一件事 ge第三声 la第二声 是口语 “碁”这个字念什么?字典里查不到 邱泽唐嫣口中的 ge mei lian (读音:三声可能也是二声 三声 四声)是什么?PPTV采访中说的. 求“暑假中的一件事”作文 8/27的-3分之2次方计算过程 杭州建兰中学千岛湖建新校 2014年美一涂鸦街区将拆迁 艺术家联名告开发媒体揭秘美国监听手段:大使馆屋顶材料美无人机操作员:像僵尸一样执行任务 “罗莎”向偏西方向移动 东部地区雾霾杭州小区取消固定车位引争执 一位大伯杭州大妈100岁生日 家庭四世同堂齐法国总理呼吁民众避免使用暴力手段来解美无人机操作员:遥控飞机阿富汗杀人 杭州国际马拉松赛今天上午开跑 景区单委内瑞拉总统谴责推特强删其推特粉丝4至6月违法捕捞可入刑出境游热 催生海外酒店收购文化惠民呈上地方好戏江门首次举行宪法宣誓仪式阿胶检出“牛基因”?蒋雯丽:不能原谅男人出轨书香墨香飘进村寓教于乐学礼仪给对方海阔天空的自由朱熹:落落三百余文 千古“治家之经”今起可省内异地补换领身份证砍伤法院干警厚街男子被拘
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘