学科:IOS/Library
欢迎补充各库的介绍。界面库在另一个页面
综合
编辑Nimbus - The iOS framework whose growth is bounded by O(documentation)
- 针对Three20文档不足产生的……
- GitHub: jverkoey/nimbus
- 协议:The Apache License, Version 2.0
- SSToolkit is a collection of well-documented iOS classes for making life easier by solving common problems all iOS developers face. Some really handy classes are SSCollectionView, SSGradientView, SSSwitch, and many more.
- GitHub: samsoffes/sstoolkit
- 协议:The MIT license
- TapkuLibrary is an iOS library built on Cocoa and UIKit intended for broad use in applications. If you're looking to see what the library can do, check out the demo project included. Some major components include coverflow, calendar grid, network requests and progress indicators.
- 协议:The MIT license
图形
编辑- Core Plot is a plotting framework for Mac OS X and iOS. It provides 2D visualization of data, and is tightly integrated with Apple technologies like Core Animation, Core Data, and Cocoa Bindings.
- 协议:New BSD License
- An iOS Image filter library based on Alex Michael's filtrr.js
- 协议:The MIT license
- SVGKit is a Cocoa framework for rendering SVG files as Core Animation layers. All shapes are represented by instances of the CAShapeLayer class, and are, by design, animatable.
- 协议:The MIT license
- The GPUImage framework is a BSD-licensed iOS library that lets you apply GPU-accelerated filters and other effects to images, live camera video, and movies. In comparison to Core Image (part of iOS 5.0), GPUImage allows you to write your own custom filters, supports deployment to iOS 4.0, and has a simpler interface. However, it currently lacks some of the more advanced features of Core Image, such as facial detection.
- For massively parallel operations like processing images or live video frames, GPUs have some significant performance advantages over CPUs. On an iPhone 4, a simple image filter can be over 100 times faster to perform on the GPU than an equivalent CPU-based filter.
- 协议:BSD
- UIImage+PDF provides a UIImage class category method to render a UIImage from any PDF stored in the application bundle. The motivation for this was to enable the easy use of scaleable vector assets in iOS apps.
- 协议:未知 —— 04:06, 13 March 2012 (UTC)
游戏
编辑cocos2d - a framework for building 2D games, demos, and other graphical/interactive applications.
- 协议:BSD License
- cocos2d for iphone
- 算是个使用 SceneKit 和 Swift 的 demo
- 协议: https://github.com/nicklockwood/FPSControls/blob/master/LICENCE.md
网络
编辑MKNetworkKit - Full ARC based Networking Kit for iOS 4+ devices
- MKNetworkKit is inspired by the other two popular network frameworks ASIHTTPRequest and AFNetworking. Mostly ASI, to some extent, AFNetworking. I've been an unofficial "evangelist" of ASIHTTPRequest till the plug was pulled.
- 协议:The MIT license
- 不推荐继续使用
- 协议:BSD
- RestKit is an Objective-C framework for iOS that aims to make interacting with RESTful web services simple, fast and fun. It combines a clean, simple HTTP request/response API with a powerful object mapping system that reduces the amount of code you need to write to get stuff done.
- GitHub: RestKit/RestKit
- 协议:The Apache License Version 2.0
- UIImageView的类扩展,增加了异步带缓存的图像下载
- 协议:The MIT license
- 通过尽可能优化的网络请求判断一个远程图片的大小和类型
- 协议:The MIT license
AFNetworking 及其扩展
编辑- An AFNetworking extension to automatically generate HTTP Archive files of all of your network requests
- 协议:The MIT license
AFURLConnectionByteSpeedMeasure
- Extends AFNetworking with the ability to measure connection speed and estimate completion time.
- 协议:The MIT license
WebView
编辑- A simple inline browser for iOS. The iPhone UI is highly based on Tweetie’s inline browser, and the iPad version on Reeder.
- 协议:The MIT license
- 跟SVWebViewController类似,带地址栏,支持收藏夹、打印、链接长按。
- 协议:The MIT license
TGJSBridge - a lightweight javascript bridge to cocoa
- 这个库提供了简单的Objective-C与Javascript通过消息通讯的功能
- 协议:BSD License
WebViewJavascriptBridge - An iOS bridge for sending messages to and from javascript in a UIWebView
社会化
编辑ShareKit : Drop-in Share Features for all iOS Apps
- 支援知名海外互联网服务、服务自定义、离线分享、外观订制,支持图像、文件分享。
- 协议:The MIT license
- GitHub: ShareKit/ShareKit
Twitter-OAuth-iPhone - An easy way to get Twitter authenticating with OAuth on iPhone
- The goal of this was to create a drop-in code package for iPhone apps that want to access Twitter via OAuth. The main benefit here is that the source line on the Twitter page will say your app name, rather than "from web".
- 协议:BSD
数据存储与处理
编辑JSONModel - Magical Data Modelling Framework for JSON. Create rapidly powerful, atomic and smart data model classes
- 不用反复写重复的代码了。
- 协议:The MIT license
- RestKit is a modern Objective-C framework for implementing RESTful web services clients on iOS and Mac OS X. It provides a powerful object mapping engine that seamlessly integrates with Core Data and a simple set of networking primitives for mapping HTTP requests and responses built on top of AFNetworking. It has an elegant, carefully designed set of APIs that make accessing and modeling RESTful resources feel almost magical.
- 协议:The Apache License, Version 2.0
ParseKit - Cocoa Objective-C Framework for parsing, tokenizing and language processing
Core Data
编辑- MagicalRecord was inspired by the ease of Ruby on Rails' Active Record fetching. The goals of this code are:
- Clean up my Core Data related code
- Allow for clear, simple, one-line fetches
- Still allow the modification of the NSFetchRequest when request optimizations are needed
- 协议:The MIT license
- mogenerator is a command-line tool that, given an .xcdatamodel file, will generate two classes per entity. The first class, _MyEntity, is intended solely for machine consumption and will be continuously overwritten to stay in sync with your data model. The second class, MyEntity, subclasses _MyEntity, won't ever be overwritten and is a great place to put your custom logic.
- 协议:The MIT license
- A lightweight Active Record - style of managing CoreData objects.
- 协议未知 --BB9z (talk) 07:15, 23 August 2012 (UTC)
SQLite
编辑FMDB - an Objective-C wrapper around SQLite
- 封装类
- 协议:The MIT license
- EGODatabase is a thread-safe Objective SQLite wrapper created by enormego. After extensively using FMDB in our applications, we saw a lot of room for improvements, the biggest was making it thread-safe. EGODatabase uses some code from FMDB, but for the most part, it was completely reworked to use result sets and row objects. A major difference between FMDB and EGODatabase is when selecting data, EGODatabase populates its EGODatabaseRow class with the data from SQLite, as opposed to retaining the SQLite results like FMDB does.
- EGODatabase is tested to work with with iPhone OS and Mac OS X 10.5
- 基于FMDB的扩展,卖点是线程安全和支持异步调用
- 协议:The MIT license
iCloud
编辑- 使用 NSUbiquitousKeyValueStore 同步 UserDefaults。
- 这个库不复杂,可用于参考学习,但不推荐实际使用,而且已经很久未维护了。推荐 https://github.com/a2/MKiCloudSync 这个fork版本,增加了对特定key的忽略、清理、状态管理。--BB9z (talk) 07:20, 30 November 2012 (UTC)
特定文件/对象处理
编辑Reader - PDF Reader/Viewer for iOS
- Demo设计漂亮,功能也不错。多线程渲染,文字显示平滑。支持加密文档与URI跳转。iBook风格的文档导航,页面缩略图导航,支持全设备方向,书签、邮寄文档、打印……
- 协议:The MIT license
leaves - An iBooks-like page-turning interface for iPhone and iPad apps using only public APIs.
- 3D翻页特效。除了PDF,还支持图像及文本内容的翻页显示。不支持PDF交互。
- 似乎不支持缩放?已停止更新 BB9z 11:37, 7 February 2012 (UTC)
二维码
编辑zxing - Multi-format 1D/2D barcode image processing library with clients for Android, Java
- Android为主的项目,iOS支持比较有限,只支持QR码。
- 协议:The Apache License 2.0
音频
编辑- Open-source audio synthesis, processing, & analysis platform. 混音处理库
- 协议:LGPL V3
其他
编辑- A Cocoa library to extend the Objective-C programming language.
- 协议:The MIT license
RegexKit Framework - Regular Expressions for Objective-C
- 协议:BSD license
- 不是设备唯一的,而对于每个应用来说是唯一的,即使OS升级。使用Domain和Salt生成UDID,如果多个应用使用相同的Domain和Salt会生成一样的UDID。
- GitHub: crashlytics / secureudid
- 协议:The MIT license
MAZeroingWeakRef - Zeroing weak references for retain/release Objective-C
- 非官方弱引用机制的实现
- 协议:BSD license
效率辅助
编辑BlocksKit - The Objective-C block utilities you always wish you had
- Blocks in C and Objective-C are downright magical. They make coding easier and potentially quicker, not to mention faster on the front end with multithreading and Grand Central Dispatch. BlocksKit hopes to facilitate this kind of programming by removing some of the annoying - and, in some cases, impeding - limits on coding with blocks.
- BlocksKit is a framework andr static library for iOS 4.0+ and Mac OS X 10.6+.
- 非常全面、实用的工具库
- 协议:The MIT license
BlockInjection - Insert some Blocks before and after the method like Aspect Oriented Programming.
- 用 block 替代原有方法已经比较常见了,这个更进一步,可以在原有方法执行之前或之后执行给定的block
- 协议:The MIT license
ConciseKit - A set of Objective-C additions and macros that helps you write code more quickly
- 神似jQuery,包含Method Swizzling,waitUntil工具,单例快速实现、使用,一套快速创建数组、字典的扩展宏。
- 协议:The MIT license
- RFKit是为日常iOS开发打造的一个辅助工具库
- 中文文档
- 协议:The MIT license
- LibComponentLogging is a small logging library for Objective-C on Mac OS X and iOS which provides log levels, log components, and pluggable logging back-ends, e.g. writing log messages to a file, or sending them to the system log.
- 协议:The MIT license
测试
编辑Quick - The Swift (and Objective-C) testing framework.
- 比较新的一个测试库
FBSnapshotTestCase - Snapshot view unit tests for iOS
- 用截图的方式测试应用
GHUnit - Test Framework for Objective-C
- GHUnit is a test framework for Objective-C, Mac OS X 10.5 and above and iPhone 3.x and above. It can be used standalone or with other testing frameworks like SenTestingKit or GTM.
- 协议:The MIT license
KIF iOS Integration Testing Framework
- KIF, which stands for Keep It Functional, is an iOS integration test framework. It allows for easy automation of iOS apps by leveraging the accessibility attributes that the OS makes available for those with visual disabilities.
- KIF uses undocumented Apple APIs. This is true of most iOS testing frameworks, and is safe for testing purposes, but it's important that KIF does not make it into production code, as it will get your app submission denied by Apple. Follow the instructions below to ensure that KIF is configured correctly for your project.
- 协议:The Apache License, Version 2.0
Debug
编辑- 直接跑在 App 里的内存泄漏诊断工具
- 协议:The MIT license
项目管理
编辑- CocoaPods is the dependency manager for Cocoa projects. It has thousands of libraries and can help you scale your projects elegantly.
- 现已成为引用第三方开源库的“标准”方式
Xcode 插件
编辑- 可以管理 Xcode 模版、配色和插件的插件
- 协议:The MIT license
- 也是管理插件的插件,相较 Alcatraz 最大的优点是可以手动升级通过它安装的插件
- 未指定协议 --02:53, 5 December 2013 (UTC)
- Xcode 默认的补全是只能匹配前缀的,这个插件可以让补全支持模糊匹配
- 未指定协议 --02:10, 5 December 2013 (UTC)
ColorSense for Xcode - Plugin for Xcode to make working with colors more visual
XVim - Xcode plugin for Vim keybindings
KSImageNamed-Xcode - Xcode plug-in that provides autocomplete for imageNamed: calls
Lin - Xcode4 plugin shows completion for NSLocalizedString
- This plugin allows you to use Dash instead of Xcode's own documentation viewer when using option-click (or the equivalent keyboard shortcut) to view the documentation for the selected symbol.
- 协议:The BSD 2-Clause License
资源及参考
编辑- Cocoa Controls,主力 Cocoa 控件收集站
- Code4App,中国版 Cocoa Controls
- http://code4app.net —— Code4App 海外版