跳转到内容

学科:IOS/Library

来自维基学院

欢迎补充各库的介绍。界面库在另一个页面

Nimbus - The iOS framework whose growth is bounded by O(documentation)

针对Three20文档不足产生的……
GitHub: jverkoey/nimbus
协议:The Apache License, Version 2.0


SSToolkit

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

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

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


Filtrr for iOS

An iOS Image filter library based on Alex Michael's filtrr.js
协议:The MIT license


SVGKit

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


GPUImage framework

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

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


相关的开源游戏:

FPSControls

算是个使用 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


ASIHTTPRequest

不推荐继续使用
协议:BSD


RestKit

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


SDWebImage

UIImageView的类扩展,增加了异步带缓存的图像下载
协议:The MIT license


ImageScout

通过尽可能优化的网络请求判断一个远程图片的大小和类型
协议:The MIT license


AFNetworking 及其扩展

[编辑 | 编辑源代码]

AFNetworking

文档:http://afnetworking.org/Documentation/
协议:The MIT license


AFHARchiver

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


SVWebViewController

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


CIALBrowser

跟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

协议:The MIT license


社会化

[编辑 | 编辑源代码]

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

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

协议:The MIT license


Core Data

[编辑 | 编辑源代码]

MagicalRecord

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 + Xmo'd

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


Objective-Record

A lightweight Active Record - style of managing CoreData objects.
协议未知 --BB9z (talk) 07:15, 23 August 2012 (UTC)

FMDB - an Objective-C wrapper around SQLite

封装类
协议:The MIT license


EGODatabase

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


MKiCloudSync

使用 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)
协议:The MIT license


二维码

[编辑 | 编辑源代码]

zxing - Multi-format 1D/2D barcode image processing library with clients for Android, Java

Android为主的项目,iOS支持比较有限,只支持QR码。
协议:The Apache License 2.0


Audio Kit

Open-source audio synthesis, processing, & analysis platform. 混音处理库
协议:LGPL V3

libextobjc

A Cocoa library to extend the Objective-C programming language.
协议:The MIT license


RegexKit Framework - Regular Expressions for Objective-C

协议:BSD license


SecureUDID

不是设备唯一的,而对于每个应用来说是唯一的,即使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

RFKit是为日常iOS开发打造的一个辅助工具库
中文文档
协议:The MIT license


LibComponentLogging

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

HeapInspector

直接跑在 App 里的内存泄漏诊断工具
协议:The MIT license


项目管理

[编辑 | 编辑源代码]

CocoaPods

CocoaPods is the dependency manager for Cocoa projects. It has thousands of libraries and can help you scale your projects elegantly.
现已成为引用第三方开源库的“标准”方式

Xcode 插件

[编辑 | 编辑源代码]

Alcatraz

可以管理 Xcode 模版、配色和插件的插件
协议:The MIT license


JDPluginManager

也是管理插件的插件,相较 Alcatraz 最大的优点是可以手动升级通过它安装的插件
未指定协议 --02:53, 5 December 2013 (UTC)


FuzzyAutocompletePlugin

Xcode 默认的补全是只能匹配前缀的,这个插件可以让补全支持模糊匹配
未指定协议 --02:10, 5 December 2013 (UTC)


ColorSense for Xcode - Plugin for Xcode to make working with colors more visual

协议:The BSD 2-Clause License


XVim - Xcode plugin for Vim keybindings

协议:The MIT license


KSImageNamed-Xcode - Xcode plug-in that provides autocomplete for imageNamed: calls

协议:The MIT license


Lin - Xcode4 plugin shows completion for NSLocalizedString

协议:The MIT license


Dash Plugin for Xcode

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

资源及参考

[编辑 | 编辑源代码]