总结分享十大iOS开发者最喜爱的库 分类: ios相关 app相关 2015-04-03 16:43 320人阅读 评论(0) 收藏
该10大iOS开发者最喜爱的库由“iOS辅导团队”成员Marcelo Fabri组织投票选举而得,参与者包括开发者团队,iOS辅导团队以及行业嘉宾。每个团队都要根据以下规则选出五个最好的库:1)不能投自己写的库;2)排除大的架构,比如游戏类架构;3)排除不在设备上运行的库,例如CocoaPods或者Rack::CoreData也排除在外。
最终评选出了如下10大iOS开发者最喜爱的库:
1)SSToolkit
Sam Soffes简直就是一个Objective-C天才,SSToolkit就是个例子。作者将他在App中实现的各种各样的UI效果做成个代码库,方便其他人使用。
SSToolkit一些基础的类包括SSCollectionView,SSGradientView
从UI部件到便利的Foundation类别都经过精心设计并记录在案,帮助开发者解决一些普遍问题,比如追踪一款设备是否有视网膜显示屏或者是否能剪裁图片
2)GPUImage
GPUImage一个功能十分强大又十分易用的图像处理库。
提供各种各样的图像处理滤镜,并且支持照相机和摄像机的实时滤镜
是基于GPU的图像加速,图像处理速度超快,并且能够自定义图像滤镜
支持ARC
不过现在还缺少一些Core Image拥有的一些先进功能,比如面部探测。
滤镜效果图
3)SocketRocket
SocketRocket是一个WebSocket客户端(WebSocket是适用于Web应用的下一代全双工通讯协议,被称为“Web的TCP”,它实现了浏览器与服务器的双向通信),采用Object-C编写。超级稳固又简单易用,简直就是实时应用的最佳拍档。
SocketRocket遵循最新的WebSocket规范RFC 6455
只有部分比较新的浏览器比如Chrome支持这个库
支持TLS (wss),iOS 4.x系统
使用NSStream/CFNetworking(可免费享用)、使用ARC
采用并行架构
大部分的工作由后端的工作完成、基于委托编程。无任何UI包依赖。
因为Square,才有了SocketRocket
4)HockeyKit
HockeyKit是一个iOS Ad-Hoc自动更新框架。所有的苹果店中的App都可以使用它,它能显著提高整个Beta测试过程,分为两部分:服务器和客户端框架。服务端组件不需要客户端库就能单独工作。
只需在服务器上安装一次服务端,就可以处理bundle identifier不同的多个应用程序(有开发者强烈建议对Debug、AdHocBeta和AppStore发布版使用不同的Bundle identifier)
默认当App启动或唤醒时,客户端会从服务器检测更新,用户可以在设置对话框中修改这个设置:一天一次或手动检测更新
除了支持iOS,HokeyKit也支持Android平台,不过Android版还处在Alpha阶段,支持OTA及应用内更新
为HockeyKit用户提供服务器托管服务
Beta测试演示
5)JSONKit
JSONKit是Objective C平台上比较常用的JSON数据访问工具。
JSONKit能在运行的情况下与libz.dylib自动连接而无须人工连接
在解析期间,如果检测到有gzip文件,JSONKit能自动解压
速度超快,支持之前的iOS版本(但要注意一点,从iOS 5开始,iOS就已经有本地JSON解析工具了)
JSONKit的性能远优于JSON-Framework(即SBJSON),JSONKit使用起来也非常简单,表现性能比苹果iOS 5.0中的NSJSONSerialization还要好,速度比NSJSONSerialization快上 25% to 40%,已经是非常大的一个差距了
Benchmark测试结果图
6)MagicalRecord
使用Core Data时会用到许多引用代码,让工作变得很复杂,让人有种挫败感,MagicalRecord的出现就是解决这些问题的。
不但能清理Core Data代码,还可在必要的时候进行NSFetchRequest修改
需要iOS 5.0及以上版本,Mac OS 10.7及以上版本
使用ARC
能利用iCloud同步Core Data商店
7)RestKit
Restkit是一个开源的Objective-C框架。
可在iOS和Mac OS X的Objective-C中与RESTful Web服务进行简单交互
包含简单的HTTP request/response API
带有强大的对象映射系统,用于减少代码长度
RestKit可降低JSON/XML的处理的资源消耗,支持通过SBJSON和YAJL进行JSON解析
当你的应用需要与一个REST远程API整合的时候,RestKit就会派上用场,帮你减少工作量(教程指导)。
添加Restkit
8)TestFlight
要想轻松发送并公测应用?用TestFlight吧,无须通过iTunes,有人曾经整理出了它的三大杀手锏:
轻松采集测试用户的UDID和iOS 版本、硬件版本,并发送给开发者。在接收到开发者的TestFlight邀请之后,用户只需拿自己的iPhone即可打开邀请中的链接,注册账号,注册硬件
有了测试包以后,不用一个个发邮件,只需要将IPA上传到TestFlight网站,然后勾选合适的测试用户,点击确认,你就完事了,用户会马上收到 TestFlight的更新通知,然后只需在他的iPhone上登录TestFlight网站,TestFlight就会自动将测试IPA安装到他的 iPhone上
不用担心用户没有成功安装,Testfligh能够给你实时反馈最新统计数据
现在还推出了桌面App,用起来更快更方便了。
9)MBProgressHUD
苹果的应用程序一般都会用一种半透明的进度显示效果,不过这个API是不公开的,因此你要是用了,很可能被踢出AppStore。而MBProgressHUD提供了一个替代方案,实现的效果根本看不出和官方程序有什么差别。
同时还提供了其他附加功能,比如虚拟进展指示符,以及完成提示信息
你也可以安装其他东西,比如需要显示的文本,动画,x及y设置等等,有许多iOS辅导员都在用它,一般用来作应用内购买
MBProgressHUD适用于任何iOS版本,需要LLVM 3.0及以上编译器架构,兼容ARC及非ARC项目,这得取决于苹果的以下架构:
Foundation.架构
UIKit.架构
CoreGraphics.架构
透明进度效果
10)AFNetworking
AFNetworking是一个轻量级的iOS网络服务类库。它建立在NSURLConnection和NSOperation等类库的基础上,让很多网络通信功能的实现变得十分简单。
支持HTTP请求和基于REST的网络服务(包括GET、POST、 PUT、DELETE等)
支持ARC
要求iOS 5.0及以上版本
有一些插件扩展已有的功能,还有一个功能齐全的API
从URL中获取JSON特别简单,简单到什么程度?看下面几行代码
NSURL *url = [NSURL URLWithString:@"https://alpha-api.app.net/stream/0/posts/stream/global"]; NSURLRequest *request = [NSURLRequest requestWithURL:url]; AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest
*request, NSHTTPURLResponse *response, id JSON) { NSLog(@"App.net Global Stream: %@", JSON); } failure:nil]; [operation start];
在这10大库中,AFNetworking是最大赢家,现在是GitHub上第三大Objetive-C库,iPhone,iPad上很多著名应用都使用这个类库,是很多人的最爱。
这里把好用的库整理出来介绍给大家,希望真正能帮到开发者,让你们的生活变得更简单。
--开源中国
版权声明:本文为博主原创文章,未经博主允许不得转载。
总结分享十大iOS开发者最喜爱的库 分类: ios相关 app相关 2015-04-03 16:43 320人阅读 评论(0) 收藏的更多相关文章
- iOS动画特效 分类: ios技术 2015-05-15 16:29 311人阅读 评论(0) 收藏
关于图层的几个坐标系. 对于ios来说,坐标系的(0,0)点在左上角,就是越往下,Y值越大.越往右,X值越大. 一个图层的frame,它是position,bounds,anchorPoint和tra ...
- iOS开发~CocoaPods使用详细说明 分类: ios相关 2015-04-01 16:45 68人阅读 评论(0) 收藏
iOS开发-CocoaPods使用详细说明 一.概要 iOS开发时,项目中会引用许多第三方库,CocoaPods(https://github.com/CocoaPods/CocoaPods)可以用来 ...
- OC基础:内存(内存管理) 分类: ios学习 OC 2015-06-25 16:50 73人阅读 评论(0) 收藏
自动释放池: @autoreleasepool { } 内存管理机制 谁污染,谁治理 垃圾回收机制:gc(Garbage collection),由系统管理内存,开发人员不需要管理. OC ...
- iOS开发之圆角指定 分类: ios技术 2015-05-25 16:26 191人阅读 评论(0) 收藏
如果需要将UIView的4个角全部都为圆角,做法相当简单,只需设置其Layer的cornerRadius属性即可(项目需要使用QuartzCore框架).而若要指定某几个角(小于4)为圆角而别的不变时 ...
- iOS自定义字体及类目 分类: ios技术 2015-05-15 16:34 195人阅读 评论(0) 收藏
1:获取字体文件 从各种渠道下载字体文件ttf, 网站或者从别的ipa里扣出来.(以fzltxh.ttf为例) 2:将fzltxh.ttf文件拷贝到工程中 3:在Info.plist中添加项: Fon ...
- iOS开发网络数据之AFNetworking使用 分类: ios技术 2015-04-03 16:35 105人阅读 评论(0) 收藏
http网络库是集XML解析,Json解析,网络图片下载,plist解析,数据流请求操作,上传,下载,缓存等网络众多功能于一身的强大的类库.最新版本支持session,xctool单元测试.网络获取数 ...
- c语言基础:数据类型 分类: iOS学习 c语言基础 2015-06-10 21:43 9人阅读 评论(0) 收藏
C语言基本数据类型大体上分为: 整型 和 浮点型 字节: 计算机中最小的储存单位 1 Byte = 8 bit 整型: int 4 ...
- Android 应用中十大常见 UX 错误 分类: H1_ANDROID 2013-09-21 13:59 404人阅读 评论(0) 收藏
转载自:http://www.apkbus.com/android-5661-1.html 摘要: Android 开发者关系团队每天都会试用无数的 App 或者受到无数的开发者发来的请求评测的 Ap ...
- 苹果应用商店AppStore审核中文指南 分类: ios相关 app相关 2015-07-27 15:33 84人阅读 评论(0) 收藏
目录 1. 条款与条件 2. 功能 3. 元数据.评级与排名 4. 位置 5. 推送通知 6. 游戏中心 7. 广告 8. 商标与商业外观 9. 媒体内容 10. 用户界面 11. 购买与货币 12. ...
随机推荐
- math ceil以及math floor,math:round
◎Math.ceil()执行向上舍入,即它总是将数值向上舍入为最接近的整数:◎Math.floor()执行向下舍入,即它总是将数值向下舍入为最接近的整数:◎Math.round()执行标准舍入,即它总 ...
- 17232 伪Acmer的推理(传递闭包)
17232 伪Acmer的推理 时间限制:1000MS 内存限制:65535K提交次数:0 通过次数:0 收入:0 题型: 编程题 语言: G++;GCC Description 现在正是期末, ...
- U3D脚本开发基础
1.MonoBehaviour类,定义了对各种特定事件的脚本响应函数.这些函数均以On做开头. 2.U3D中常用的组件及对应变量名如下: Transform(transform),Rigidbody( ...
- 转:Emmet 学习之路 - 2 基本语法
http://blog.csdn.net/jizhongchun/article/details/8472755 导读:Emmet的基本语法.学习步骤是:1 基本语法: 2 html命令: 3 css ...
- 强制性输出private中变量的三种方法
众所周知,private里面的变量不可以输出,但是也可以通过特殊途径获得. 1.通过指针暴力内存,把它索罗出来,方法:调试,破掉语法. 并且还可以对类对象进行修改. // Thread.cpp : 定 ...
- vim Podfile
platform :ios, "7.0"pod "AFNetworking"pod "SDWebImage"pod "SVProg ...
- Eclipse/MyEclipse 最最常用的快捷键
F 键类 F2 显示详细信息 F3 跳到声明或定义的地方 Ctrl + 键类 Ctrl+1 快速修复 ( 最经典的快捷键 , 就不用多说了 ) Ctrl+D 删除当前行 Ctrl+E 快速显示当前 E ...
- codeforces 665B Shopping
暴力 #include<cstdio> #include<cstring> #include<cmath> #include<vector> #incl ...
- PAT (Advanced Level) 1045. Favorite Color Stripe (30)
最长公共子序列变形. #include<iostream> #include<cstring> #include<cmath> #include<algori ...
- Python大神成长之路: 第一次学习记录
一.Python发展史 二.Python2 or 3 博主选择了Python3. 从官网下载Python www.python.org Windows安装python3.5.python2.7.安装 ...