iOS超全开源框架、项目和学习资料汇总
数据库
FMDB – sqlite的工具, 多线程FMDatabaseQueue实例,FMDB数据库的使用演示和封装工具类。GXDatabaseUtils – 在FMDB基础上的工具。
realm-cocoa – Realm是一个真正为移动设备打造的数据库,同时支持Objective-C和Swfit。Realm宣称其相比Sqlite,在移动设备上有着更好的性能表现。
Breeze – 用Swift写的一个轻量级的CoreData管理工具,并且还支持iCloud 。
AlecrimCoreData – Swift,更容易地访问 CoreData 对象封装类库。除了 CRUD,还提供指针定位,强大的排序、筛选,异步数据获取,以及独立线程后台存取数据。
CoreStore – Core Data 管理类库。 其中事务管理及查询是其比较大的亮点,整套 API 功能完整。
Presentation – 重量级好项目 Presentation,它可以方便你制作定制的动画式教程、Release Notes、个性化演讲稿等。
CoreValue – Swift 2 版 Core Data 封装库。相比另外两个 SwiftRecord和 CoreStore更轻量。
缓存处理
YTKKeyValueStore – Key-Value存储工具类,说明。
TMCache – TMCache 是 Tumblr 开源的一个基于 key/value 的数据缓存类库,可以用于缓存一些临时数据或者需要频繁加载的数据,比如某些下载的数据或者一些临时处理结果。
JLKeychain – 快捷使用keychain存储数据的类,使keychain像NSUserDefaults一样工作。
sskeychain – SSKeyChains对苹果安全框架API进行了简单封装,支持对存储在钥匙串中密码、账户进行访问,包括读取、删除和设置。
KeychainAccess – 管理Keychain接入的小助手。
图像浏览及处理
FLAnimatedImage – gif播放处理的工具。
CLImageEditor – 超强的图片编辑库,快速帮你实现旋转,防缩,滤镜等等一系列麻烦的事情。
VIPhotoView – 用于展示图片的工具类,因为是个 View,所以你可以放在任何地方显示。支持旋转,双击指定位置放大等。
MWPhotoBrowser – 一个非常不错的照片浏览器,在github的star接近3000个,解决MWPhotoBrowser中的SDWebImage加载大图导致的内存警告问题。
core-image-explorer – Core Image 滤镜处理图片– swift ,Core Image 介绍。
CoreImageShop – CoreImageShop图片滤镜处理– Mac app that let you create a complete Core Image Filter usable on iOS using SCRecorder。
GPUImage – 处理图片效果。
RSKImageCropper – 适用于iOS的图片裁剪器,类似Contacts app,可上下左右移动图片选取最合适的区域。
WZRecyclePhotoStackView – 删除照片交互–WZRecyclePhotoStackView,就是模拟生活中是删除或保留犹豫不决的情形而产生的。 在上滑,下滑的部分,借鉴了TinderSimpleSwipeCards。
TimingFunctionEditor – TimingFunctionEditor用swift编写, 贝塞尔曲线编辑器,编辑后可以预览或拷贝代码片段直接使用。P.S. 该项目采用更简单的依赖管理器 Carthage,而非常用的 CocoaPods。Carthage介绍中文。
AAFaceDetection – AAFaceDetection–swift,简单、实用的面部识别封装库。虽然该技术从 iOS 5 发展,不过真正有趣的应用还不多。。
PhotoTweaks – 这个库挺赞的,正好是对图像操作的。
Concorde – swift, Concorde, 一个可用于下载和解码渐进式 JPEG 的库, 可用来改善应用的用户体验。
ZoomTransition – swift, 通过手势操控图片的放大、缩小、旋转等自由变化效果的组件及示例。
AFImageHelper – swift,一套针对 UIImage 和 UIImageView 的实用扩展库,功能包含填色和渐变、裁剪、缩放以及具有缓存机制的在线图片获取。
PinterestSwift – swift,Pinterest 风格图片缩放、切换示例。
KYElegantPhotoGallery – 一个优雅的图片浏览库。
SDCycleScrollView – 无限循环自动图片轮播器(一步设置即可使用)。
SDPhotoBrowser – 仿新浪动感图片浏览器,非常简单易用的图片浏览器,模仿微博图片浏览器动感效果,综合了图片展示和存储等多项功能。
HZPhotoBrowser – 一个类似于新浪微博图片浏览器的框架(支持显示和隐藏动画;支持双击缩放,手势放大缩小;支持图片存储;支持网络加载gif图片,长图滚动浏览;支持横竖屏显示)。
PhotoStackView-Swift – PhotoStackView——照片叠放视图,使用说明。
MarkingMenu – 基于手势、类似 Autodesk Maya 风格标记菜单及图片渲染。
SXPhotoShow – UICollectionViewFlowLayout流水布局 是当下collectionView中常用且普通的布局方式。本代码也写了三种好看的布局,其中LineLayout和流水布局有很大的相同点就直接继承UICollectionViewFlowLayout,然后StackLayout,CircleLayout这两种都是直接继承自最原始的UICollectionViewLayout 布局方案。
摄像照相视频音频处理
ZFPlayer - 基于AVPlayer,支持竖屏、横屏(横屏可锁定屏幕方向),上下滑动调节音量、屏幕亮度,左右滑动调节播放进度ZFPlayer剖析
SCRecorder – SCRecorder 短视频录制。
VideoPushDemo – 视频剪辑 视频特效制作1 视频特效制作2。
LLSimpleCamera – A simple, customizable camera control for iOS, 摄像头。
EZAudio – EZAudio 是一个 iOS 和 OSX 上简单易用的音频框架,根据音量实时显示波形图,基于Core Audio,适合实时低延迟音频处理,非常直观。中文介绍,官网。
ffmpeg – ffmpeg官网,FFmpeg在iOS上完美编译。
VCL – VCL官网。
ijkplayer – B站开源的视频播放器,支持Android和iOS。
StreamingKit – StreamingKit流媒体音乐播放器。
FreeStreamer – FreeStreamer流媒体音乐播放器,cpu占用非常小。
DOUAudioStreamer – DOUAudioStreamer豆瓣的音乐流媒体播放器。
fmpro – 电台播放器,支持锁屏歌词,支持基本播放流程,歌词展示,后台锁屏播放和控制以及锁屏后封面+歌词,fmpro_R 。
IPDFCameraViewController – 支持相机定焦拍摄、滤镜、闪光、实时边框检测以及透视矫正功能,并有简单易用的API。
SCRecorder – 酷似 Instagram/Vine 的音频/视频摄像记录器,以 Objective-C 为基础的过滤器框架。 你可以做很多如下的操作:记录多个视频录像片段。删除任何你不想要的记录段。可以使用任何视频播放器播放片段。保存的记录可以在序列化的 NSDictionary 中使用。(在 NSUserDefaults 的中操作)添加使用 Core Image 的视频滤波器。可自由选择你需要的 parameters 合并和导出视频。
Cool-iOS-Camera – Cool-iOS-Camera。
FastttCamera – FastttCamera 快速照相。
ICGVideoTrimmer – ICGVideoTrimmer提供提供视频剪切的视图(类似系统相册中浏览视频时顶部那个条状视图)。左右两个边界选择器还能够自定义。
IOS录音和播放功能demo – 比较完整的ios录音和播放功能的实现。
CameraManager – 相机管理封装类库。看着极好用的样子—-swift。
MCAudioInputQueue – 简易录音类,基于AudioQueue的。
DraggableYoutubeFloatingVideo – 展示像类似Youtube移动应用的那种浏览视频的效果,当点击某视频时能够从右下方弹出一个界面,并且该界面能够通过手势,再次收缩在右下方并继续播放。这是通过AutoLayout设计实现。
amr – 做即时通讯的音频处理,录音文件是m4a,便于web端的音频播放。
FSVoiceBubble – 一个轻量级播放录音音频的气泡:1.支持短时间的音频播放(支持网络音频);2.播放时的声波动画;3.自定义包括声波的颜色,气泡的背景等。
KRVideoPlayer – 类似Weico的播放器,支持竖屏模式下全屏播放。
其他
DateTimeKit – 一个超赞的时间处理的库,Joda-Time ! 他能帮你轻松处理时区,处理时间加减,计算到期时间等等场景下的问题。
SwiftDate – 特别完整、强大的日期时间操作管理类库。它几乎涵盖了已知开源日期类库所有优秀特性。 他能帮你轻松处理时区,处理时间加减,计算到期时间等等场景下的问题。
iOS私有API – 私有API,绿色 == public,红色 == private,蓝色 == dylib。
iOS源代码 – iOS源代码。
libfacedetection – C++ 人脸识别 包含正面和多视角人脸检测两个算法.优点:速度快(OpenCV haar+adaboost的2-3倍), 准确度高 (FDDB非公开类评测排名第二),能估计人脸角度。
Slidden – 一个老外开源的开发自定义键盘的库,利用这个开源库,可以方便的配置键位、颜色以及键位对应的图片。
TPKeyboardAvoiding – 用户键盘弹出自动计算高度,进行屏幕滚动操作。
CDPMonitorKeyboard – CDPMonitorKeyboard封装,可以解决输入视图(例如textField,textView等)被键盘覆盖问题,并可设置高于键盘多少。
自动监听键盘高度 – 自动监听键盘高度,初始界面,输入框在屏幕最下方,当键盘出现时,输入框随即移动到键盘上方。
SYKeyboardTextField – SYKeyboardTextField 是一个轻巧,简单,非侵入式的键盘附随输入框! 采用Swift编写。
BlocksKit – block框架,为 OC 常用类提供了强大的 Block 语法支持,使得编写 OC 代码变得舒适、快速、优雅。
KVOController – 在项目中有使用 KVO ,那么 KVOController 绝对是个好选择。它是 facebook 开源的一个 KVO 增强框架。
appirater – 用于提醒用户给你的 APP 打分的工具。
MotionKitr – 为核心运动框架(The Core Motion framework)提供友好的类库封装,以更方便使用三轴陀螺仪和加速感应器特性。Review Monitor – 第一时间自动推送 Apple Store 的用户评论到你的邮件箱或者 Slack,第一时间跟进用户反馈,打造优秀 App 必备工具!类似的有:App annie 的类似功能。
WBWebViewConsole – 类似微博iPhone客户端的 “调试选项” 吗?把其中的 “内置浏览器网页调试” 开源在 Github 上了。
ios-good-practices – ios-good-practices iOS 开发最佳实践。
iOS开发最佳实践 – iOS 开发最佳实践 — 中文。
TodayExtensionSharingDefaults – TodayExtensionSharingDefaults是一个iOS 8 Today扩展示例,可以使用NSUserDefaults与其containing app分享数据。QRCodeReader.swift – QRCodeReader.swift一款简单的 QR 二维码阅读组件及示例,提供前后相机切换功能。
QRCatcher – 一个简洁美观的二维码扫描应用, iOS学习:AVFoundation 视频流处理–二维码扫描。
Parsimmon – swift,小而美的语言学类库封装工具包。提供分词、标记词性、词形归并、朴素贝页斯分类、决策树等自然语言分析小工具。P.S. 英语分词效果好于中文,感兴趣的同学可以针对中文做一些优化开发。参考译文 NSHipster – NSLinguistic?Tagger。
Password-keyboard – 随机变换数字位置的密码键盘。 模仿银行类应用在付款时输入的随机密码键盘。
MKMapView-Extension – 这是关于 MKMapView 写的一个基于swift的扩展,可以扩展 MKMapView 的相关功能,减少复用代码量。
SemverKit – 针对符合『语义化版本规范 2.0.0』版本号的解析、比较运算类库。不仅支持 Major, Minor, Patch,还支持 Alpha 和 Beta 预发布版本,以及相应地递增运算扩展。
SwiftValidator – 基于规则的输入验证类库。项目良好的面向对象设计思想,使规则的扩展及自定义非常方便。更专业的规则引擎(甚至是基于自然语言的规则配置)解决方案,比如:开源的 Drools,商用的 ILOG 等。Tesseract-OCR-iOS – 有关OCR文字识别项目。
iOS-Categories – 收集了许多有助于开发的iOS扩展,各种category。
Olla4iOS – 过去积累的一些方便复用的类和方法,还在整理中。
DKNightVersion – 用最快的方式给你的应用加上夜间和白天的切换效果。
TouchVisualizer – 实用的多点触摸可视化组件。扩展并作用于 UIWindows,结构上提供了简单地针对触摸显示定制,比如触摸点的颜色。
RegexKitLite – 用来处理正则表达式。
XcodeServerSDK – 非官方 Xcode Server SDK 封装库。 P.S. 该 SDK 分离自之前推荐的由该作者开发的自动测试框架 Buildasaur。
BFKit-Swift – BFKit-Swift 这套工具库可以提高应用开发效率。
CKSIncrementalStore – 基于 CloudKit 服务器实现多终端数据同步。
SwiftSequence – 简洁、灵活、多变的操作 SequenceType 的类库(基于微框架(μframework)设计思想)。
IDNFeedParser – 一个简单易用的Rss解析库。
CoreUmeng – 简单:友盟分享封装。
openshare – 不用官方SDK,利用社交软件移动客户端(微信/QQ/微博/人人/支付宝)分享/登录/支付。
Swifternalization – 一套实用的本地化工具库。使用教程及 API 文档完整。值得收入项目的“轮子”。
apous – 一款有趣的 Swift 应用 - 让 Swift 成为脚本语言。
Mirror – 通过反射(Refection)实现镜像对象封装库。从而可以更轻松获取(或输出)对象属性名、类型及值变量。
Proposer – Proposer 用单个 API 处理 iOS 上的权限请求,以便使用前确认可访问“相册”、“相机”、“麦克风”、“通讯录”或“用户位置”。
LocationManager – CoreLocation使用起来还是比较麻烦的,需要授权,判断系统版本等等,所以推荐使用第三方框架LocationManager,使用Block,十分简单!
pangu.objective-c – 有多种语言实现版本~ Pangu.Objective-C:格式化中英文之间的空格(OC)。
objection – 一个轻量级的依赖注入框架Objection。