iOS常用开发工具及第三方框架

2017-10-25  本文已影响81人  番薯大佬

iOS开发中使用到的工具,以及为了避免重复造轮子,也为了更快、更有效的地进行开发,常常引用的第三方框架,像网络请求的AFNetworking,数据持久化的FMDB,请求提示符MJRefresh,还有数据解析,特殊处理后的UI视图等等。


配置&装机工具

名称 说明
Homebrew 套件管理器
cocoapods 第三方框架管理工具
rubygems
ruby.taobao 淘宝镜像

常用开发工具

名称 说明
官方Xcode使用介绍
LSUnusedResources 查找项目中未使用文件
MLeaksFinder 内存泄露检查
Easy APNs Provider - 推送测试工具 为iOS、Mac app提供推送测试的小工具
xctool
Quick 用于Swift中的单元测试(也可用于Objective-C),与Xcode整合在一起。

网络框架

名称 说明
AFNetworking AFNetworking是一个轻量级的iOS、Mac OS X网络通信类库
MKNetworkKit 一个完全基于 ARC,使用十分方便,功能又十分强大、完整的iOS网络编程代码库。
ASIHTTPRequest 是一款极其强劲的HTTP访问开源项目,能够让简单的API完成非常复杂的功能,比如异步请求、队列请求、GZIP压缩、缓存、断点续传、进度跟踪、上传文件、HTTP认证。
AFNetworking-RACExtensions 针对ReactiveCocoa的AF封装
猿题库网络请求 一个开源的AFnetworking上层的封装(猿题库等运用)
SocketRocket 适用于iOS,macOS和tvOS的符合规范的WebSocket(RFC 6455)客户端库
CocoaAsyncSocket CocoaAsyncSocket为Mac和iOS提供易于使用和强大的异步套接字库
Reachability 验证网络连接状态
UUChatTableView IM对话功能的封装
NetworkEye 监控网络请求的内容
RestKit Restkit是一个主要用于iOS上网络通信的开源Objective-C框架,除了发送请求、接受响应这些基本功能外,还附带Core Data,以及将远程JSON映射为本地对象的功能。
XMPPFramework XMPPFramework是一个使用Objective-C编写的用于Mac/iOS开发的XMPP框架,它提供了一个RFC-3920(XMPP标准)核心实现,通过某些特定工具读写XML。XMPPFramework有着非常丰富的建立在模块化架构之上的XEP扩展,开发者可以将其直接插入到代码中,使用GCD构成,即使是在非常老旧的iPhone或12核Mac Pro上,它都能高效运转。
CocoaHTTPServer CocoaHTTPServer是一个用于Mac OS X或iOS应用的轻量级、可嵌入的HTTP服务器框架。有时候开发者需要在他们的App中内嵌一个HTTP服务器。无论是具有远程监控功能的服务器应用,还是使用HTTP进行后端通信的桌面应用,或者是提供无线访问文档功能的iOS应用,CocoaHTTPServer都能满足你的开发要求。
Alamofire 如果你需要进行网络的相关工作,诸如下载、上传与获取JSONs等等的话,Alamofire正是你所需要的。

视图控制器框架

名称 说明
ViewDeck 抽屉视图控制器,能够实现类似于Path 2.0 的视图左右滑动的效果,支持向左或向右顺滑的滑动操作。
MSDynamicsDrawerViewController iOS7风格的抽屉导航
MGSplitViewController 用于iPad左右分栏界面显示,分栏类功能比系统提供的UISplitViewController更加丰富
RDVTabBarController 底端页签视图控制器
PKRevealController PKRevealController是一个可以滑动的侧边栏菜单(可向左、向右或者同时向两侧),只需手指轻轻一点(或者按一下按钮,但是这样滑动时不够炫酷)。
RESideMenu 侧滑菜单

数据持久化框架

名称 说明
JSONKit JSON数据解析
Mantle 数据model
Lockbox 安全存储用户名,密码等
SDURLCache 将缓存存在磁盘
MagicalRecord MagicalRecord就像是给Core Data提供了一层外包装,隐藏掉所有不相关的东西。
SwiftyJSON 使Swift的JSON解析。
KeychainAccess 管理Keychain接入的小助手
MJExtension 解析JSON字典数组转模型
JSONModel 解析JSON数据转模型
Mantle 将json数据模型化model对象
GDataXML DOM方式解析,由google开发,基于Libxml2.。Google提供的用于XML数据处理的类集。该类集对libxml2–DOM处理方式进行了封装,能对较小或中等的xml文档进行读写操作且支持XPath语法。纯c语言,默认包含在ios SDK中,同时支持DOM和SAX方式解析
hpple 解析html之后获取的资源模型对象
fmdb 第三方SQLite数据库框架。以OC的方式封装了SQLite的C语言API,提供 SQLite 数据库的类,用于执行 SQL 语句。

chart图表

名称 说明
charts iOS图表库
PNChart 带动画效果的图表控件

图片处理

名称 说明
SDWebImage 图片加载
GPUImage 一个基于GPU图像和视频处理的开源iOS框架。
EBPhotoPages 图片浏览
GMGridView 照片墙
TwitterCover 下拉头图放大

多媒体处理

名称 说明
视频播放器
音频播放完整客户端
豆瓣音频播放
音频播放流
AudioEngine
MiaowShow iOS视频直播项目

动画

名称 说明
动画 使动画在简单性、可链接性与声明性方面有所提高。
pop facebook出品的动画框架
JazzHands 图片动画,多用于启动页

UI处理

名称 说明
SlackTextViewController 自适应文本区域、手势识别、自动填充、多媒体合并
FontAwesomeKit Font Awesome可以很容易地给项目加字体,使用方式繁多。
FontBlaster 定制字体
SnapKit 在board中用上SnapKit,可以简单直观地编写约束。
MBProgressHUD 加载提示框
SVProgressHUD 显示提示框的框架
TTTAttributedLabel UILabel 的替代品, 使 iOS 上的 Label 功能更加丰富, 可支持链接植入等功能
iCarousel iCarousel 是一个用来简化在 iOS 上实现旋转木马时的视图切换效果,支持 iPad,提供多种切换效果。内容类似的页面需要并排列出来,供用户选择
SDCycleScrollView 轮播图,但是伪无限循环
NJKWebViewProgress 网页加载进度
SMPageControl 可自定义的分页控件
JDStatusBarNotification 在状态栏显示的顶部指示器
SDCAlertView 类似系统自带的指示器,应该是对系统自带的指示器进行封装
ActionSheetPicker-3.0 ios自定义选择器
AGEmojiKeyboard 表情键盘
MWPhotoBrowser 这是一个简单的iOS照片浏览器可选的网格视图,标题和选中功能
FDStackView 第三方的类似UIStackView,可以支持到iOS6+

TableView&CollectionView处理

名称 说明
DZNEmptyDataSet 用来处理空的table view和collection view
RETableViewManager 动态创建与管理table views。它给我们提供了预定义cells(bool类型、文本、日期等等——请看下面的截图),但是你还可以创建自定义views,并与默认视图一同使用。
MGSwipeTableCell Swipeable表格cell的操作管理
UITableView+FDTemplateLayoutCell 百度开源项目,UITableViewCell自适应高度
SWTableViewCell UITableViewCell 的子类, 实现了左右滑动显示信息视图并调出按钮

日历

名称 说明
PDTSimpleCalendar 日历组件

刷新

名称 说明
MJRefresh 上拉和下拉刷新框架

适配

名称 说明
Masonry 对AutoLayout封装,比苹果官方好用

插件

名称 说明
VVDocumenter-Xcode Xcode插件,帮助开发者轻松在Xcode生成注释

地图定位

名称 说明
intuit/LocationManager 第三方定位框架

游戏

名称 说明
cocos2d-swift cocos2d

其他

名称 说明
ZipArchive 解压缩框架
ZipArchive 解压缩框架
appirater 用于提醒用户给你的 APP 打分的工具
ReactiveCocoa 函数式响应式编程框架
BlocksKit block框架
LBXScan 二维码、扫码、扫一扫、ZXing和ios系统自带扫码封装,扫码界面效果封装
marcuswestin/WebViewJavascriptBridge JS和OC交互的框架,比如拦截URL
erica/uidevice-extension 主要用于读取各种平台(iPhone、iPad、模拟器)下设备的信息
iOS-Runtime-Headers 这个iOS运行时头文件项目。看看私有API列表。iOS (Cocoa Touch)的各私有API都可以通过runtime查看获得
RuntimeBrowser 运行浏览器
iphone-private-frameworks iOS 私有API库

调试工具

名称 说明
YYViewHierarchy3D 3D效果查看 UIView 层次结构
Injection for Xcode Xcode高端必备插件。iOS UI调试神器,成吨的提高开发效率

Facebook工具

名称 说明
FBKVOController Facebook的开源框架KVO观察者

YY工具集

名称 说明
YYKit YYKit 是一组庞大、功能丰富的 iOS 组件
YYModel iOS JSON 模型框架
YYCache iOS 缓存框架
YYImage iOS 图像框架
YYWebImage iOS 异步图像加载框架
YYText iOS 富文本框架
YYKeyboardManager iOS 键盘监听管理工具
YYDispatchQueuePool iOS 全局并发队列管理工具
YYAsyncLayer iOS 异步绘制与显示的工具
YYCategories 功能丰富的 Category 类型工具库
上一篇 下一篇

猜你喜欢

热点阅读