我想很多程序员应该记得 GitHub 上有一个 Awesome - XXX 系列的资源整理。awesome-ios 就是 vsouza 发起维护的 iOS 资源列表,内容包括:框架、组件、测试、Apple Store、SDK、XCode、网站、书籍等。Swift 语言写成的项目会被标记为 ★ ,AppleWatch 的项目则会被标记为 ▲。
需要更多关于ios开发资料的可以加我的iOS交流群714042473:,不管你是小白还是大牛欢迎入驻面试经验,讨论技术, 大家一起交流学习成长!希望帮助开发者少走弯路,微信如下
进入正题!!!!!!!!!!!!!!!
入门
Road Map iOS - 开发 iOS 应用从今天开始,苹果指南。★
Lifehacker - 我想写一个 iOS 应用,该从哪里开始?
Codeproject - 入门 iPhone 和 iOS 应用开发。
Ray Wenderlich - 学习 iOS 应用开发。
Stanford - Developing Apps to iOS - 斯坦福在 iTunes U 上的 iOS App 开发课程(音频和视频)。
Stanford - Developing iOS 8 Apps with Swift - 斯坦福在 iTunes U 上用 Swift 开发 App 的课程(2015版)。★
库和框架
音频
AudioBus:下一代 App 到 App 的实时音频路由。官网
AudioKit:一个强大的音频合成,处理和分析的工具集。官网
EZAudio:一个基于 Core Audio 的 iOS/OSX 音频可视化框架。用于实时,低延迟的音频处理和可视化功能的开发。官网
novocaine:应用于 OSX 和 iOS 的高性能音频框架。官网
QHSpeechSynthesizerQueue:一个 AVSpeechSynthesizer(iOS文本发音) 的队列管理系统。官网
StreamingKit - 一个针对 OSX 和 iOS 中 AudioPlayer/AudioStreamer 快捷的无缝扩展。官网
sound-fader-ios:一个 Swift 写的 AVAudioPlayer 的声音控制器 官网★
动画
Pop:一个 iOS 和 OS X 动画库,可以方便地实现由物理效果的交互。官网
AnimationEngine - 可以在 iOS 上方便地构建高级自定义动画。
Awesome-iOS-Animation - 一个动画项目的集合。
RZTransitions - iOS View Controller 过场动画库。
DCAnimationKit - iOS 动画集合。很简单,只需要添加流水动画。
Spring - 一个简单的 Swift iOS 动画库。
Canvas - 无需代码就可以在 Xcode 中显示动画 http://canvaspod.io。
Fluent - 便捷的 Swift 动画框架。 ★
Cheetah - 便捷的 iOS 动画库,由 Swift2 编写。 ★
RadialLayer:针对可点击元素的动画(类似于 Youtube Music)★官网
Apple TV
Voucher - 方便 tvOS App 通过 iOS 设备上相应的程序来认证的库。
桥接
JSPatch - JSPatch 利用 Objective-C 运行时桥接了 Objective-C 和 Javascript。你仅需引入一个小的引擎,就可以使用 JS 调用任何 Objective-C 的类。JSPatch 通常用来对 iOS App 做热修复(hotfix)。
缓存
SDURLCache - URLCache 的子类,可以为 iPhone/iPad 应用提供的本地磁盘缓存。
Awesome Cache - 让人喜爱的本地缓存 ★
mattress - iOS Web 内容的离线缓存 ★
Carlos - 简单但却灵活的缓存 ★
图表
ios-charts - 一个强大的图表框架,MPAndroidChart 在 iOS 上的移植。★
JTChartView - JTChartView 是一个完全可定制的轻量级图表解决方案。
PNChart - 一个简单漂亮的图表库,Pinner 和 CoinsMan 的iOS客户端中使用了这个框架。
BEMSimpleLineGraph - 优雅的折线图框架。
JBChartView - 基于 iOS 的图表库,包含折线图和直方图。
iOSPlot - iOS 图表库。
XYPieChart - 一个有动画的饼图框架。
TEAChart - 简单易用的 iOS 图表库。包括了贡献图、时钟图、直方图。
EChart - iOS/iPhone/iPad 图表。提供了事件处理和动画支持。
FSLineChart - 一个 iOS 折线图库。
chartee - 一个为移动平台设计的图表库。
ANDLineChartView - 使用 ANDLineChartView 可以便捷的在视图类中显示有动画效果的折线图。
TWRCharts - 一个 ChartJS 的 iOS 封装。结合 Obj-C 原生代码便捷地构建有动画的图表。
Core Data
CWCoreData - 方便并发环境下 CoreData 框架开发的扩展与实用工具。
ObjectiveRecord - ActiveRecord 的 Objective-C 版本。
SSDataKit - 消除使用 CoreData 产生的样板代码。
ios-queryable - ios-queryable 是一个基于 CoreData 的 IQueryable/IEnumerable 实现。
ReactiveCoreData - ReactiveCoreData (RCD) 是一个将 CoreData 带入 ReactiveCocoa 世界的尝试。
Ensembles - 一个 CoreData 同步框架。
SLRESTfulCoreData - 根据 Objc 命名习惯,在运行时自动生成访问器,URL替换和智能属性映射。
Mogenerator - 自动生成 CoreData 代码。
HardCoreData - 不会阻塞 UI 线程的 CoreData 栈和控制器。
encrypted-core-data - 使用 SQLClipher 对 CoreData 的 SQLite 存储进行加密。
MagicalRecord - 非常优秀的 CoreData 便捷存取框架。
QueryKit - 一个简洁的类型安全的 CoreData 查询语言 ★
CoreStore - 强大的 CoreData 框架,解决了增量迁移、获取、观察等问题。★
数据库
Realm - CoreData 和 SQLite 的替代品。简洁、现代、快速。
YapDatabase - YapDatabase 是一个 iOS 和 Mac 上可扩展的数据库。
Couchbase Mobile - Couchbase,有云同步支持的移动平台上的文档存储。
FMDB - SQLite 的 Cocoa/Objective-C 封装。
Akaibu-NSUserDefaults - Swift 键/值存储,只需要一行代码就可以对 NSObject 对象进行归档。类的属性会自动映射和归档。
FCModel - 为那些喜欢直接使用 SQL 进行数据库操作的人提供的 CoreData 的替代品。
Zephyr - 轻松地通过 iCloud 同步 NSUserDefaults ★
Prephirences - Prephirences 是一个提供了有用的协议和便捷的方法来管理应用的偏好设置,配置和应用状态的 Swift 库。★
加密
AESCrypt-ObjC - 一个简单固执的 AES 加密/解密类,然而它就是可以很好的工作。
硬件
动作
MotionKit - 只需要两行或者很少的几行代码就可以从加速度传感器、陀螺仪和磁力传感器获取数据。现在 CoreMotion 让这些变得前所未有的简单。
蓝牙
Discovery - 这是个很简单的库,用来从附近的设备上发现和获取数据(即便 peer app 在后台工作)。
LGBluetooth - 基于 CoreBluetooth 的一个轻量级库,基于 block 制作。它能够让你程序中的 CoreBluetooth 相关的代码更加简洁。
PeerKit 一个用于事件驱动,零配置的 Multipeer 连接应用程序的开源 Swift 框架。★
simple-share - 一个基于蓝牙 LE 共享的框架,易于实现附近设备的连接。
BluetoothKit - 使用 BLE 在 iOS/OSX 设备之间通讯的框架★
位置
IngeoSDK - 总是处于开启状态的 iOS 位置显示框架。
Proxitee - 允许开发者利用 iBeacons 和地理围栏创建近场感知的应用。
LocationManager - 实现了一次性或者持续请求当前位置的功能,提供了基于 block 的异步 API。
LocationKit - 高级位置 SDK - 只使用很少的电量和上下文相关的位置信息就可以提供高精确度的位置数据。
iBeacon
Proxitee - 允许开发者利用 iBeacons 和地理围栏创建近场感知的应用。
OWUProximityManager - 一个方便的 iBeacon + CoreBluetooth 管理器。
Vicinity - 复制邻近的 iBeacons (通过分析RSSI),并支持在后台广播和检测 BLE 设备。
BeaconEmitter - 把你的 Mac 变成一个 iBeacon。
OWUProximityManager - iBeacons + CoreBluetooth.
HUD
MBProgressHUD - 用于显示一个半透明的 HUD。当任务在后台线程结束时可以在上边显示一个指示器和/或者标签。
SVProgressHUD - 一个为你的 iOS 应用制作的简洁,轻量级的进度指示 HUD。
ProgressHUD - ProgressHUD 是一个轻量易用的 HUD。
M13ProgressSuite - 一个包含了很多 iOS 上用于显示进度信息工具的套装。
JHProgressHUD - 一个简单轻量的 Swift 框架,用于在 iOS 应用中显示★
PKHUD - 用 Swift 重新实现了 Apple 的原生 HUD,支持 iOS 8 以上★
CozyLoadingActivity - 轻量的载入动作指示 HUD ★
事件总线
Caravel - 用于 UIWebView 和 JS 的 Swift 事件总线。★
SwiftEventBus - 一个真对 iOS 8 优化的发布/订阅事件总线。★
PromiseKit - iOS 和 OS X 上的 Promises 实现。
Bolts - Bolts 是一个试图使构建移动应用更简单的一个底层库集合。包括了任务(promises)和应用关联(deep links)。
SwiftTask - Swift 实现的 Promise + progress + pause + cancel + retry。 ★
文件
FileKit - Swift 实现的简单快捷的文件管理工具。★
JSON
JSONKit - Objective-C JSON 工具。
TouchJSON - 一个 Objective-C 的 JSON 框架。
JSON-Framework - 这个框架用 Objective-C 实现了一个严格的 JSON 解释器和生成器。
Mantle - 面向 Cocoa 和 Cocoa Touch 的模型框架 Model 。
Groot - 实现呃 JSON 字典或者数组和 Core Data Mangement 对象之间的转换。
KZPropertyMapper - 以最少的代码实现数据映射和验证。
JSONModel - 神奇的基于 JSON 的数据模型化框架。创建了一系列敏捷便利,自动并且智能的模型类。
SwiftyJSON - 使用 Swift 处理 JSON 数据的好方法。★
FastEasyMapping - 快速地序列化和反序列化 JSON 数据。
OCMapper - Objective-C & Swift 通用的快速 JSON 模型转化框架。 ★
ObjectMapper - 在模型对象(包括 class 和 struct)和 JSON 之间转换的 Swift 框架。★
JASON - 性能优秀操作便捷的 JSON 解析。★
Gloss - 一个 Swift 写的 JSON 解析库。★
Cereal - Swift 对象序列化 ★
SwiftyJSONAccelerator - 使用 SwiftyJSON 或者 ObjectMapper 根据 JSON 生成 Swift 模型。