iOS開發全套資源,從入門到全棧IOS工程師

內容介紹:本內容涵蓋框架、組件、測試、Apple Store、SDK、XCode、網站、書籍等。發起者來自vsouza,由jobbole提供中文編譯。php

文章如下內容主要是分享面經和我的的學習建議,內容涉及到不少PDF文檔(面試題庫、學習筆記、實戰文檔、腦圖等),因爲文章有限,須要這些文檔的,直接(點擊我)便可獲取html

入門

  • 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版)。★官網

庫和框架

音頻

動畫

Apple TV

  • Voucher:方便 tvOS App 經過 iOS 設備上相應的程序來認證的庫。官網

橋接

  • JSPatch:JSPatch 利用 Objective-C 運行時橋接了 Objective-C 和 Javascript。你僅需引入一個小的引擎,就可使用 JS 調用任何 Objective-C 的類。JSPatch 一般用來對 iOS App 作熱修復(hotfix)。官網

緩存

圖表

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 模型。支持 NSCoding 而且提供了使用 JSON 來表示模型的方法。★官網

佈局

  • ios-flexboxkit:一個封裝了 Flexbox 佈局的簡單 UIKit 擴展。官網
  • Masonry:利用簡單的,鏈式的語法發揮出自動佈局 NSLayoutConstraints 的強大功能。官網
  • FLKAutoLayout:讓使用代碼作約束更加簡便的 UIView 類別。官網
  • Façade:可編程的視圖佈局,一個 autolayout 的替代品。官網
  • PureLayout:終極的 iOS 和 OS X 上的 Autolayout API,極其簡單又異常強大。同時適用於 Objective-C 和 Swift。官網
  • SnapKit:一個 iOS 和 OS X 的 Swift Autolayout 領域專用語言(DSL)。★官網
  • Cartography:一個 Swift 編寫的聲明式 Auto Layout 領域專用語言(DSL)。★官網
  • AutoLayoutPlus:給 Auto Layout 加的一點料,由 Swift 驅動。 ★官網

日誌

  • CleanroomLogger:一個基於 Swift 可配置可擴展的日誌 API,簡潔、輕量而且高效。★官網
  • CocoaLumberjack:一個快捷強大靈活的日誌框架,可用於 iOS & Mac。官網
  • NSLogger:一個高性能的日誌工具,它能夠顯示運行在 OS X、iOS 和 Android 上客戶端應用的蹤影。官網
  • Aardvark:一個高性能日誌框架,它使得建立可操做的 bug 報告變得很是簡單。官網
  • BlockTypeDescription:在日誌記錄 block 的時候顯示類型簽名。官網
  • QorumLogs:爲 Xcode 和 Google Docs 設計的 Swift 日誌工具。★官網

地圖

  • Route-me:iOS 開源地圖框架官網
  • NAMapKit:容許你在 iPhone 應用使用自定義地圖,並嘗試模仿 Mapkit 框架的一些行爲。官網
  • Mapbox GL:一個 iOS 上使用 OpenGL 渲染 Mapbox 矢量地圖塊的框架。官網
  • CMMapLauncher:用於 iOS 中在各類地圖應用中顯示方向的便捷框架。官網
  • 百度地圖iOS SDK:一套功能豐富的地圖開發工具包。官網
  • 百度鷹眼軌跡iOS SDK:一套可以進行綁路糾偏的軌跡開發工具包。官網

媒體

圖片

  • GPU Image:一個基於 GPU 的 iOS 開源的圖像和視頻處理框架。官網
  • UIImage DSP:iOS UIImage 處理功能,它使用 vDSP/Accelerate 框架來提升速度。官網
  • QR Code Scanner:二維碼掃描器。官網
  • AsyncImageView:UIImageView 的異步圖像加載和顯示擴展,不會阻塞 UI 線程。官網
  • SDWebImage:異步的圖像下載器,提供了緩存支持。以 UIImageView 類別的方式提供。官網
  • DFImageManager:從多種數據源獲取圖像的現代框架。無需配置,並具備高度的可定製性和擴展性。使用了 NSURLSession。官網
  • MapleBacon:一個 Swift iOS 圖像下載和緩存庫 ★官網
  • NYTPhotoViewer:抽屜菜單和照片查看器。官網
  • IDMPhotoBrowser:圖片瀏覽器/查看器。官網
  • JTSImageViewController:iOS 交互式圖片瀏覽器。官網
  • Concorde:下載和解碼連續的 JPEG 圖像。官網
  • SCRecorder:相似 Vine 的點擊拍攝,動畫過濾器,慢鏡頭,片斷編輯相機引擎。官網
  • HanekeSwift:一個 Swift 編寫的 iOS 平臺的輕量級通用緩存框架,還有對圖像的更多支持。★官網
  • TOCropViewController:一個能夠容許用戶修改 UIImage 對象的視圖控制器。官網
  • YXTMotionView:一個自定義的圖片視圖,它實現了依靠設備運動來滾動圖片。官網
  • PINRemoteImage:一個線程安全、高性能、特性豐富的圖像獲取器。官網
  • SABlurImageView:能夠輕鬆地爲圖片添加模糊動畫效果。★官網
  • FastImageCache:在滾動時快速顯示圖片的 iOS 框架。官網
  • BKAsciiImage:將圖片渲染爲 ASCII art 的庫。官網
  • YLGIFImage:異步的 GIF 圖像解碼和圖片瀏覽器。支持 GIF 圖動畫,但只消耗少許的內存。官網
  • AlamofireImage:一個爲 Alamofire 製做的圖像組件庫。★官網
  • Nuke:高級的圖片管理框架。★官網
  • FlagKit:供 app 和 web 頁面上使用的漂亮旗標。★官網
  • YYWebImage:異步圖像加載框架(支持 WebP,APNG,GIF 格式)。官網
  • EFQRCode:一個純 Swift 開發的藝術二維碼生成庫。★官網

視頻

  • VIMVideoPlayer:一個對 AVPlayer 和 AVPlayerLayer 類的簡單封裝。官網
  • MobilePlayer:一個強大完善且徹底可定製的 iOS 媒體播放器。官網

PDF

  • Reader:一個 iOS PDF 閱讀器的核心。官網
  • UIView 2 PDF:使用 UIViews (或配合着 XIB)的 PDF 生成器。官網

消息

  • LayerKit:一個對於 Layer 的 iOS 開發組件,。是將消息(文字,照片,視頻,數據)添加到移動或 Web 應用中最簡單的解決方案。官網
  • Twilio:驅動着現代的交流方式,構建下一代音頻與 SMS 應用。官網
  • Plivo:SMS API、音頻 API 和 全球運營商。官網
  • XMPPFramework:一個 iOS 和 Mac 上的 XMPP 協議通信框架。官網

網絡

  • AFNetworking:一個駕輕就熟的 iOS 和 OSX 上的網絡請求框架。官網
  • RestKit:RestKit 是一個 iOS Objective-C 框架,是爲了讓和 RESTful web 服務交互變的簡單、快捷、有趣。官網
  • FSNetworking:穩固的 iOS 網絡庫。官網
  • ASIHTTPRequest:Objective-C 編寫的 HTTP 網絡請求庫。它是對 CFNetwork 易用的封裝。支持 Mac OS X 和 iPhone。官網
  • Overcoat:小巧可是很強大的庫,讓建立一個 REST 客戶端簡便和有趣。官網
  • ROADFramework:面向屬性的 web 服務交互方式。框架有內建的 json 和 xml 請求響應序列化方法,十分方便擴展。官網
  • MBNetworkMonitor:蘋果 Reachability 類的現代化替代品,使用了 CoreTelephony 來傳達更多有關用戶網絡鏈接情況的信息官網
  • MBNetworkIndicator:提供了簡單的方式在多個請求之間協調設備網絡指示器官網
  • Alamofire:Alamofire 是一個 Swift 寫的 HTTP 網絡庫,由 AFNetworking 的做者編寫。★官網
  • Transporter:讓上傳下載更便捷的小代碼庫。★官網
  • CDZPinger:使用方便的 ICMP Ping 框架。官網
  • NSRails:將客戶端的對象/類映射到遠程 REST API 的對象/ORM。官網
  • NKMultipeer:一個創建在多重連接上的可測試的抽象。★官網
  • CocoaAsyncSocket:用於 Mac 和 iOS 的異步 socket 網絡庫。官網
  • Siesta:優雅的 RESTful 資源抽象,將狀態解藕。是基於回調或者代理的網絡庫的替代品。★官網
  • Reachability.swift:用 Swift 和閉包從新實現了蘋果的 Reachablility 框架。★官網
  • NetworkEye:一個 iOS 網絡調試庫,能夠顯示 App 中的 HTTP 請求和請求的相關信息。官網

推送通知

  • Orbiter:在 iOS 中註冊推送通知。官網
  • PEM:爲推送服務器自動生成 profile。官網
  • Parse Push:徹底免費的後臺推送通知,提供了建立分段,調度甚至 A/B 測試的能力。官網
  • Urban Airship:付費的推送通知後臺。官網
  • Growth Push:付費的推送通知。 它是在日本最受開發者喜好的工具之一。官網
  • APNS-Pusher:蘋果推送通知服務的調試器。官網

Passbook

  • passbook:爲 Passbook 建立 pkpass 文件。官網
  • Dubai:生成和預覽 Passbook 的 Pass。官網
  • Passkit:設計、建立並驗證 Passbook 的 Pass。官網

權限

  • PermissionScope:智能的 iOS 受權 UI 和 統一的 API(支持位置、通知、照片、聯繫人、日曆、照片、麥克風、BT、進度指示、HealthKit 和 CloudKit)。★官網
  • Proposer:便捷地請求用戶權限(支持相機、照片、麥克風、聯繫人、位置)。★官網
  • ICanHas:簡化 iOS 用戶權限請求(支持位置、推送通知、相機、聯繫人、日曆、照片)。★官網
  • VWWPermissionKit:可視化的 iOS 受權管理器。官網
  • ISHPermissionKit:爲 iOS 提供請求用戶權限的統一方法。官網
  • JLPermissions:iOS 預受權工具,開發者用它來製做詢問用戶是否受權的對話框,支持日曆、聯繫人、位置、照片、備忘錄、twitter、推送通知和其餘須要受權的操做。官網

文本

  • Twitter Text Obj:Twitter 的文本處理庫的 Objective-C 實現。官網
  • Nimbus:Nimbus 是一個爲高級 iOS 軟件設計師製做工具包。官網
  • NSStringEmojize:一個將 Emoji 表情符號轉換爲等價的 Unicode 字串的 NSString 類別。官網
  • MMMarkdown:用於將 Markdown 轉換爲 HTML 的 Objective-C 靜態庫。官網
  • DTCoreText:利用 CoreText 使用 HTML 代碼的方法。官網
  • DTRichTextEditor:一個 iOS 的富文本編輯器。官網
  • NBEmojiSearchView:一個支持搜索而且能夠集成到文本控件中的 emoji 下拉列表視圖。官網
  • ios-fontawesome:NSString + FontAwesome。官網
  • Pluralize.swift:強大的 Swift String 單數轉換複數擴展。★官網
  • RichEditorView:RichEditorView 是一個簡單、模塊化的富文本編輯器視圖。★官網
  • Money:爲與錢和現金相關工做的的 Swift 值類型。★官網
  • PhoneNumberKit:用於解析,格式化和驗證國際電話號碼的 Swift 框架,由谷歌的 libphonenumber 庫支持。★官網
  • YYText:iOS 上用於顯示和編輯富文本的強大文本框架。官網

功能漫遊 / 介紹 / 教程

  • Onboard:用一點點代碼就能夠建立一個漂亮的吸附效果的實踐。官網
  • EAIntroView:高度可定製非侵入式的歡迎頁面解決方案。官網
  • MYBlurIntroductionView:在 MYIntroductionView 上完善的,用於構建可定製的 app 介紹或者教程頁面的框架。官網
  • BWWalkthrough:一個自定義 iOS App 的功能漫遊頁面的框架。★官網
  • GHWalkThrough:一個基於 UICollectionView 的非侵入式介紹頁面組件。官網
  • ICETutorial:一個很好的教程框架,相似 Path 3.X 版本的 App 中的樣式。官網
  • JazzHands:Jazz Hands 是一個簡單的 UIKit 關鍵幀動畫框架。動畫是可使用手勢、滾動視圖、KVO 或者 ReactiveCocoa 來控制的。官網
  • RazzleDazzle:簡單的基於關鍵幀的 iOS 動畫框架,由 Swift 編寫。最適合用於 App 的滾動介紹頁面。★官網
  • Instructions:向你的 iOS 項目中添加自定義的操做方式指導的簡單辦法。★官網
  • SwiftyWalkthrough:建立一個體驗絕佳的功能漫遊的最簡單方法,Swift 編寫。★官網

URL Scheme

  • WAAppRouting:iOS 的路由實現。同時處理了 URL 識別和利用控制器顯示解析後的參數。所有這些只要一行代碼就能夠搞定,控制器堆棧還會被自動保留!官網
  • DeepLinkKit:傑出的路由匹配框架,使用基於 block API 處理你的深連接。官網
  • IntentKit:一個便捷的方法來在 iOS app 中處理第三方 URL schemes。官網
  • JLRoutes:使用了 block API 的 iOS URL 路由框架。官網

UI

  • Chameleon:一個 iOS 性能強大的輕量級扁平化顏色框架,能夠用於 Objective-C 和 Swift。★官網
  • ActionSheetPicker-3.0:爲 iOS App 快速製做一個下拉 UIPickerView / ActionSheet 功能。官網
  • FlatUIKit:適用於 iOS 的扁平化 UI 組件集合。官網
  • JVFloatLabeledTextField:附有浮動標籤的 UITextField 子類。官網
  • SSBouncyButton:有彈性的 iOS7 樣式按鈕 UI 組件。官網
  • BetweenKit:一個健壯的 iOS 拖拽框架。官網
  • JSQMessagesViewController:一個優雅的 iOS 聊天消息 UI 庫。官網
  • AMSmoothAlert:一個很 cool 的 AlertView。官網
  • TSMessages:在屏幕上方顯示通知(好比成功、錯誤、警告或者消息)視圖。官網
  • NZAlertView:簡單直觀的 AlertView。相似推送通知的效果。官網
  • MGSwipeTableCell:能夠顯示滑動按鈕的 UITableViewCell 的子類,還支持多種過渡動畫。官網
  • ARAutocompleteTextView:subclass of 實時顯示文本提示的 UITextView 的子類。完美支持 e-mail 格式。官網
  • TGCameraViewController:基於 AVFoundation 的自定義相機。樣式漂亮,輕量而且能夠很容易地集成到 iOS 項目中。官網
  • ENSwiftSideMenu:一個 Swift 寫的簡潔 iOS7/8 側滑菜單。★官網
  • MDCSwipeToChoose:滑動卡片來決定 "喜歡" 或者 "不喜歡" 的控件,效果相似 Tinder App。能夠用於在幾分鐘內建立識字卡 app,圖片瀏覽器或者其餘相似應用,而不用幾小時。官網
  • ParallaxTableViewHeader:UITableView header 的視差滾動效果組件。官網
  • JLToast:iOS 的 Toast 組件,提供了簡單的接口。★官網
  • SweetAlert:爲 iOS 應用提供了實時動畫效果的 AlertView,Swift 編寫而成。★官網
  • Form:JSON 驅動的列表控件。官網
  • BLKFlexibleHeightBar:建立一個高度能夠自動調整的 NavigationBar,相似 Facebook ,Square Cash,Safari 中的那樣。官網
  • NMPopUpView:用於顯示浮動窗口的簡單 iOS 類。支持 Swift 和 Objective-C。★官網
  • SDevIconFonts:用於 Swift 的 Fontawesome, Iconic, Ionicons, Octicon。★官網
  • SDevBootstrapButton:Swift 版的 Twitter Bootstrap 按鈕。★官網
  • SDevCircleButton:Swift 實現的圓型按鈕。★官網
  • SDevFlatColors:Swift 實現的扁平化顏色。★官網
  • ColorArt:從圖片中取出主要顏色,相似 iTunes 11 的效果。官網
  • IQKeyboardManager:防止鍵盤滑出來遮擋住 UITextField/UITextView 的框架,非侵入,無需代碼。官網
  • WCFastCell:滾動流暢的 Tables/Collections cell (沒有動畫)。官網
  • Motif:一個基於 JSON 的可定製輕量級樣式表框架。官網
  • VBFPopFlatButton:基於 Facebook POP製做的,有9種不一樣狀態動畫的扁平化按鈕。官網
  • HTPressableButton:扁平化設計的能夠按壓的按鈕。官網
  • Cool-iOS-Camera:一個徹底可定製的現代的照相機,使用 AVFoundation 框架實現。官網
  • AsyncDisplayKit:AsyncDisplayKit 是一個 iOS 框架,它可以使一個很複雜的用戶界面保持平滑和反應靈敏。官網
  • AMTagListView:一個能夠添加一系列高度可定製化的標籤的 UIScrollView 子類。官網
  • MotionBlur:MotionBlur 讓你能夠在 iOS 動畫效果上添加模糊效果。官網
  • PBJVision:iOS 相機引擎,支持點擊拍攝,慢動做視頻和圖片捕捉功能。官網
  • DynamicColor:又一個用於操做顏色的 Swift 擴展。★官網
  • GaugeKit:可定製的儀表組件,能夠方便地仿製蘋果樣式的儀表盤。★官網
  • SVWebViewController:一個非侵入式的內置瀏覽器。官網
  • SwiftWebVC:一個 SVWebViewController 的 Swift 實現。★官網
  • MVAutocompletePlaceSearchTextField:一個相似 Google Places,Uber 等位置搜索的非侵入式自動完成控件。官網
  • MVMaterialView:用來模仿 Material Design 概念波紋(Ripple)效果 UI 控件的子類和 UIButton。官網
  • Atlas:爲 Layer 設計的原生 iOS 消息應用 UI 組件。官網
  • Swift-Prompts:用來設計自定義提示的 Swift 庫,有很大的範圍可供選擇。★官網
  • IQDropDownTextField:提供了下拉 UIPickerView 支持的 UITextField。官網
  • PJAlertView:蘋果棄用了原來好用的警告視圖,讓咱們失去了不少的定製性,這個庫從新將定製性帶回來。官網
  • CZPicker:iOS 的 Popup 樣式的 UIPickerView.官網
  • TisprCardStack:卡片 UI 庫。★官網
  • YXTPageView:一個支持 UIView 和 UITableView 之間滾動切換的 PageView。官網
  • DatePickerDialog:在 UIAlertView 上顯示 UIDatePicker 的 Swift 庫。★官網
  • gifu:iOS 上支持動態 GIF 的 Swift 框架。★官網
  • SAHistoryNavigationViewController:SAHistoryNavigationViewController 實現了一個在 iOS 上的相似任務管理器的 UI,兼容 UINavigationContoller,3D Touch。★官網
  • DOFavoriteButton:一個可愛的動畫按鈕。★官網
  • LNRSimpleNotifications:簡單的 Swift app 內置通知。LNRSimpleNotifications 是一個 Swift TSMessages 簡化版本。 ★官網
  • NgKeyboardTracker:iOS 的鍵盤跟蹤 Objective-C 庫。官網
  • SAInboxViewController:受到 "Inbox by google" 動畫過渡效果啓發的 UIViewController 子類。★官網
  • TLYShyNavBar:不像那些 UINavigationBar 那麼傲慢。這個 Bar 很謙虛!能夠很容易地建立自動滾動的 navigation bar。官網
  • BRYXBanner:Swift 的 iOS7+ 樣式的下拉通知。 ★官網
  • NYAlertViewController:能夠自定義內容視圖的 iOS AlertView,可高度自定義。官網
  • HDNotificationView:使用模仿原生的通知橫幅 UI,發出任何警告。官網
  • MZFormSheetPresentationController:MZFormSheetPresentationController 提供了一個原生 iOS UIModalPresentationFormSheet 的替代品,添加了對 iPhone 的支持,而且能夠自定義 controller 的尺寸和表單的外觀。官網
  • AnimatedTransitionGallery:使用 UIViewControllerAnimatedTransitioning 協議實現了自定義 iOS 7 過渡動畫。官網
  • iCarousel:iOS 和 Mac OS 上簡單的,高度可定製化的數據驅動 3D 跑馬燈。官網
  • RESideMenu:受 Dribble 上的設計啓發而製做的 iOS 7/8 樣式的視差側滑菜單。官網
  • FontAwesomeKit:iOS 的圖標字體庫,如今支持 Font-Awesome,Foundation icons,Zocial 和 ionicons。官網
  • Cocoa Controls:開源的 iOS 和 OS X UI 組件.官網
  • ActiveLabel.swift:非侵入的 UILabel 替代品,支持 Hashtags (#), Mentions (@) 和 URL (http:// )。 ★官網
  • XLForm:XLForm 是最靈活強大的 iOS 庫,用來建立動態的 tableview 表單,徹底適用於 Swift 和 Obj-C。官網
  • RAReorderableLayout:能夠拖拽放置的 UICollectionView 元素。官網
  • ESTabBarController:一個容許高亮按鈕和自定義按鈕動做的 Tabbar 控制器。官網
  • STPopup:STPopup 爲 iPhone 和 iPad 提供了一個 popup 樣式的 UINavigationController。官網
  • HoneycombView:HoneycombView 是用來顯示相似 Honyecomb 佈局的 iOS UIView,由 Swift 實現。★官網
  • tapkulibrary:tap + haiku = tapku, 一個精心設計的 iOS 開源框架。官網
  • NVActivityIndicatorView:很好的加載動畫集合。★官網
  • KCJogDial:提供控制功能的 UIView,相似一個轉輪控制器。★官網
  • PagingMenuController:有可定製的菜單的分頁視圖控制器,Swift 實現。★官網
  • RadialMenu:RadialMenu 是一個提供了觸控的上下文菜單(相似 iOS8 中 iMessage 的錄製按鈕)的自定義控件。使用 Swift 和 POP 框架構建。★官網

WebSocket

  • Socket Rocket:一個一致的 Objective-C WebSocket 客戶端庫。官網

代碼質量

  • KZBootstrap:一系列的腳本和註釋,代碼質量不好時,在編譯時產生額外的錯誤和警告。官網
  • KZAsserts:一系列的自定義斷言,使用 DSL 來自動生成 NSError,容許在 Debug 時斷言和在 Release 時捕獲錯誤。官網
  • PSPDFUIKitMainThreadGuard:簡潔的代碼片斷,當 UIKit 在後臺線程被使用時生成斷言。官網
  • Flex:一個嵌入 iOS App 的調試和探索工具。官網
  • chisel:iOS app 的輔助調試工具,提供了一系列的 LLDB 命令。官網
  • OCLint:靜態代碼分析工具,用以提升代碼質量,減小瑕疵。官網
  • ocstyle:Objective-C 代碼風格檢查器。官網
  • SwiftLint:一個實驗性的工具,用於強化 Swift 的代碼風格和習慣。★官網
  • spacecommander:像一個團隊那樣,提交徹底格式化的 Objective-C 代碼。官網
  • DWURecyclingAlert:優化 UITableViewCell 的滾動流暢性。官網
  • DCIntrospect:小型的 iOS 可視化調試工具庫。官網
  • Watchdog:一個用於記錄阻塞主線程的太重任務的類。★官網
  • Tailor:跨平臺的 Swift 代碼靜態分析器,它幫助你編寫更加清潔的代碼,避免 bug。官網
  • SwiftCop:SwiftCop 是一個很實用的格式驗證庫,靈感來自 Ruby On Rails 清晰的活動記錄驗證。★官網

分析

  • Flurry Analytics:免費的 App 分析 API。官網
  • Parse Analytics:測量 App 的使用狀況,跟蹤 bug 等等。官網
  • Mixpanel:高級分析平臺。官網
  • Localytics:將 app 的營銷和數據分析結合起來。官網
  • Answers by Fabric:讓你實時的洞悉用戶體驗。官網
  • Liquid Analytics:經過分析和個性化的實時反饋辨認特定的行爲。官網
  • GTrack:Google Analytics 對 iOS 的輕量級 Objective-C 封裝,而且提供了一些額外的功能。官網
  • ARAnalytics:抽象的分析框架,提供了聰明的 API 來跟蹤事件和用戶數據。官網
  • Segment:將分析繼承進 iOS 應用中的簡單方式。官網

支付

  • Stripe:將 Apple Pay 支付繼承到你的應用中。很適合那些缺乏後臺知識的開發者。官網
  • Braintree:提供 5 萬美金的免費支付額度,須要後臺支持。官網
  • Venmo:在你的應用中支持和接受經過 Venmo 的支付。官網
  • Moltin:使用簡單的 SDK 爲應用添加 eCommerce,你能夠建立一個銷售產品的商店,不須要後端支持。官網

生產力

工具

  • Underscore.m:用來操做數據的 DSL。官網
  • SBConstants:生成一個包含了 storyboard 中全部 identifier 的常量文件。官網
  • XExtensionItem:方便地在 iOS 應用和分享擴展至簡分享數據。官網
  • ReflectableEnum:Objective-C 枚舉的反射。官網
  • VWWPermissionKit:可視化的 iOS 權限管理器。官網
  • ClusterPrePermissions:可重用的預受權工具,它可讓開發者在對話中獲取系統權限以前詢問用戶。官網
  • DateTools:簡便的 Objective-C 日期和時間工具。官網
  • EKAlgorithms:一些知名的計算機科學算法和數據結構的 Objective-C 實現。官網
  • Tactile:安全而且更加合乎習慣的響應收拾和控件事件的方式。★官網
  • Colours:這是一套與定義的顏色和顏色方法,讓你的 iOS/OS X 開發更加方便。官網
  • ObjectiveSugar:Ruby 風格的 ObjectiveC 附件。官網
  • GroundControl:iOS 遠程配置。官網
  • OpinionatedC:讓 Objective-C 繼承更多 Smalltalk 特性。官網
  • GCDKit:GCD 的 Swift 簡化版。★官網
  • SwiftRandom:隨即數據生成器。★官網
  • RandomKit:Swift 隨機數據生成器。★官網
  • Async:Swift 的 GCD 異步派發語法糖。★官網
  • YOLOKit:讓方塊透過圓洞。官網
  • EZSwiftExtensions:標準類型和類是如何工做的。★官網
  • ChineseIDCardOCR: 利用前饋神經網絡對身份證信息作OCR識別。 ★ 官網

安全

  • UICKeyChainStore:UICKeyChainStore 是一個對 Keychain 的簡潔封裝。官網
  • cocoapods-keys:一個用來存儲環境和應用鍵值的鍵值存儲。官網
  • Valet:在 iOS 和 OS X 的 Keychain 中安全地存儲數據,然而你無需知道 keychain 的具體工做細節。官網
  • libextobjc:一個用於擴展 Objective-C 編程語言的 Cocoa。官網
  • Locksmith:方便 Keychain 使用的強大的 Swift 面向協議庫。★官網
  • simple-touch:很是簡單的生物識別認證服務(Touch ID)的 Swift 封裝。官網

項目安裝

  • crafter:這是一個容許你使用自定義的領域專用語言(DSL)語法來配置你的 iOS 項目模版的命令行工具(CLI),使用簡單但性能強大。官網
  • liftoff:另外一個用於建立 iOS 項目的 CLI。官網
  • KZBootstrap:iOS 項目的 bootstrap,目的是高質量的編碼。官網
  • amaro:優秀的 iOS 樣板。官網
  • chairs:交換你的 iOS 模擬器文檔。官網
  • Darling:在 Linux 運行 OS X 二進制文件。官網GitHub

依賴 / 包管理

  • Cocoa Pods:CocoaPods 是一個 Objective-C 項目的依賴管理工具。它擁有成千上萬個庫,它們可使你的項目更加優雅。官網
  • Xcode Maven:Xcode Maven 插件,它能夠將 Xcode 構建過程嵌入 Maven 的生命週期中。官網
  • Gradle:Xcode 的 gradle 插件,可使用 gradle 來構建 iOS 或者 Mac OS X 項目。官網
  • Carthage:簡單的分佈式的 Cocoa 依賴管理器。★官網
  • SWM (Swift Modules):一個相似 npm(node.js的包管理器)或者 bower(Twitter 的瀏覽器的包管理器) 的 Swift 項目的包/依賴管理器,無需使用 Xcode。★官網
  • Alcatraz:Xcode 包管理工具.官網
  • CocoaSeeds:Cocoa 的 Git 子模塊替代品。官網

測試

測試驅動開發/行爲驅動開發(TDD / BDD)

  • Kiwi:一個用於 iOS 開發的 BDD 庫。官網
  • Specta:輕量級 TDD / BDD Objective-C & Cocoa 開發框架。官網
  • Quick:Swift 和 Objective-C 的 BDD 框架。官網
  • XcodeCoverage:Xcode 項目代碼覆蓋率。官網
  • OHHTTPStubs:方便地爲你的網絡請求作存根(Stub)! 使用網絡假數據測試你的 app ,你也能夠自定義響應時間,響應代碼和響應頭!官網
  • Dixie:Dixie 是一個開源的 Objective-C 測試框架。用於改變對象的行爲。官網
  • gh-unit:Objective-C 的測試框架。官網
  • LayoutTest-iOS:一個測試視圖的佈局的框架,支持多種配置。官網

UI 測試

  • CrashMonkey:iOS 平臺的 Monkey 測試工具。官網
  • appium:Appium 是一個開源自動化測試框架。用於測試原生或者混合 app。官網
  • robotframework-appiumlibrary:AppiumLibrary 是一個用於 RobotFramwork 的 appium 測試框架。官網
  • Cucumber:iOS BDD 框架。官網
  • Kif:一個 iOS 的函數式測試框架。官網
  • Subliminal:一個保守的 iOS 集成測試框架。官網
  • UIAutomation:一個使用腳本在鏈接着的設備上測試你的用戶界面元素的 JavaScript 庫。官網
  • ios-driver:使用 Selenium / WebDriver 測試任何 iOS 原生,混合或者移動 web 應用。官網
  • Zucchini:可視化的 iOS 測試框架。官網
  • Remote:在 Xcode 內部控制你的 iPhone 來作端到端的測試。官網

其餘測試

  • NaughtyKeyboard:一個危險字符串的大列表,當用戶輸入這些字符串使有很大的可能會形成 bug,這是一個用於在你的 iOS 設備上測試你 app 的鍵盤。官網
  • PonyDebugger:使用 Chrome 開發者工具對你的 iOS app 進行遠程網絡和數據調試。官網
  • ios-snapshot-test-case:使用屏幕快照的 iOS 單元測試。官網

Beta 測試版本發佈

  • Crashlytics:一個崩潰報告和 beta 測試服務。官網
  • TestFlight Beta Testing:iTunes Connect 支持的 beta 測試服務。官網
  • HockeyApp:在 HockeyApp 你能夠發佈你 app 的 beta 測試版本,收集實時的崩潰報告,獲取用戶反饋,分析測試覆蓋率。官網
  • boarding:即時爲 TestFlight beta 測試者建立簡單的註冊頁面。官網

工具鏈

  • RubyMotion:RubyMotion 是一個革命性的工具鏈。它可讓你快速地開發和測試原生 iOS 和 OS X 應用,所有使用 Ruby 語言。官網

工具

  • Shark:用於將 .xcassets 文件夾轉換成一個類型安全枚舉的 Swift 腳本。★官網
  • R.swift:在 Swift 項目中,強類型的自動補全資源名稱的工具,包括圖片,單元格和 segue 的工具。★官網
  • SwiftGen:一個生成 Swift 代碼工具的集合(生成資源的枚舉,storyboard,本地化字符串和 UIColor)。★官網
  • Localize-Swift:Swift 2.0 實如今應用中切換語言的功能,幫助你的 APP 實現友好的本地化和國際化。★官網
  • Blade:爲 iOS 和 OS X 應用生成 Xcode 圖片目錄,全局圖片和其餘相關的東西。官網
  • Retini:一個超級簡單的 Retina(2x,3x)圖片轉換器。官網
  • Provisioning:一個查看器插件,用於預覽 .mobileprovision 文件。官網
  • Strsync:自動翻譯而且使 .strings 文件和默認語言同步。官網
  • Laptop:一個讓Mac OS X或Linux更智能的shell腳本。官網Github

快速開發

  • KZPlayground:Objective-C 版本的 Playground。官網
  • dyci:代碼注入工具。官網
  • injectionforxcode:代碼注入,支持 Swift。官網
  • MMBarricade:在運行時爲 iOS app 配置本地服務器。官網
  • NetworkObjects:根據你的 Core Data 模型生成 RESTful 服務器。官網
  • STV Framework:開發原生 iOS app 的可視化開發工具。官網

部署

  • fastlane 將全部 iOS 部署工具整合到一個工做流中。
  • deliver 部署截屏,app 元數據和 AppStore app 更新,這一切只須要一個命令就能夠搞定。
  • snapshot 自動地建立所有語言和所有設備的屏幕截圖。

App Store

SDK

官方的

  • Spotify:Spotify iOS SDK。
  • Facebook:Facebook iOS SDK。
  • Google Analytics:Google Analytics iOS SDK。
  • Paypal iOS SDK:The PayPal 移動端 SDK,能夠簡便地在本地應用中集成 PayPal 和 信用卡支付。
  • Pocket:將東西保存到 Pocket 的 SDK。
  • Tumblr:集成 Tumblr 數據到 iOS 或 OS X 應用中的庫。
  • Evernote:Evernote iOS SDK。
  • Box:Box iOS 和 OS X SDK API。
  • OneDrive:Live iOS SDK。
  • Stripe:iOS and OS X Stripe 綁定框架。
  • Venmo:在你的 iOS app 經過 Venmo 生成訂單而且接受支付。
  • AWS:Amazon Web Services iOS 移動應用 SDK。
  • Zendesk:Zendesk iOS 移動應用 SDK。
  • Adobe Creative SDK:Adobe creative tools 和 Creative Cloud SDK。
  • Dropbox:Drop-ins 和 Dropbox Core API 的 SDK。
  • Fabric by Twitter:iOS 的 Fabric Twitter Kit。
  • Liquid Analytics:經過分析與實時的個性化的實時響應產生特定的行爲。
  • ResearchKit:ResearchKit 是一個開源的軟件框架,用它可方便的構建醫療研究應用或者其餘的研究項目。
  • PacketZoom:PacketZoom iOS SDK。
  • Primer:在可視化編輯器上方便建立定製化的登錄頁,註冊和登陸流程的 SDK,內建了 a/b/n 測試和分析。官網

非官方

  • STTwitter:爲 Twitter REST API 1.1 製做的穩定,成熟,全面的 Objective-C 庫。官網
  • FHSTwitterEngine:爲 Cocoa 開發者提供的 Twitter API。官網
  • Giphy: Giphy API 的 Objective-C iOS 客戶端。官網
  • UberKit:Objective-C 包裝的簡單易用的 Uber API。官網
  • InstagramKit:Instagram iOS SDK。官網
  • DribbbleSDK:Dribbble iOS SDK。官網
  • objectiveflickr:對象化的 Flickr, Objective-C 寫的 Flickr API。官網
  • DropletKit:Objective-C 包裝的 DigitalOcean v2 API。官網

Xcode

插件

  • FuzzyAutocompletePlugin:提供了除前綴匹配以外的其餘更加靈活的自動補全功能,支持 Xcode 5+。官網
  • SCXcodeMiniMap:SCXcodeMiniMap 爲 Xcode 添加了代碼地圖功能官網
  • Show in Github:能夠直接打開 Github 上當前正在編輯的行對應的 commit 頁面。官網
  • BBUFullIssueNavigator:這個插件讓 Xcode 在 issue 導航欄顯示全部的 issue 內容。官網
  • BBUDebuggerTuckAway:當你開始編輯的時候幫你隱藏調試器欄的 Xcode 插件。官網
  • SCXcodeSwitchExpander:SCXcodeSwitchExpander 是一個能夠幫你展開 switch 語句的插件,還會自動幫你插入 case 語句。官網
  • VVDocumenter-Xcode:方便的編寫標準註釋的 Xcode 插件。官網
  • XAlign:一個 Xcode 代碼自動對齊插件,它可使用自定義的模式來對齊任何東西。官網
  • Cocoapods Xcode Plugin:依賴管理工具 CocoaPods 的 Xcode 插件。官網
  • KSImageNamed-Xcode:提供了圖片名稱自動補全功能的插件。官網
  • ColorSense-for-Xcode:可視化的顏色選擇插件。官網
  • Backlight-for-XCode:高亮當前編輯的行。官網
  • UIColor-Hex-Swift:經過十六進制字符串建立 autorelease 顏色的便利方法。★官網
  • KPRunEverywhereXcodePlugin:只需一次點擊,就能夠在多個 iOS 設備上構建,運行 App。官網
  • RevealPlugin:將 Reveal App 和你的項目自動合爲一體的 Xcode 插件。官網
  • RealmPlugin:生成 Realm 模型的 Xcode 插件。官網
  • AdjustFontSize:使用 ⌘ + / ⌘ - 快捷鍵調整字體大小。官網
  • Lin:這個插件提供了 NSLocalizedString 的自動補全插件。官網
  • Rephrase:Xcode 用於本地化的插件.官網
  • XCActionBar:Xcode 的 Alfred。官網
  • QuickJump:Xcode 快速代碼導航。官網
  • CATweaker:一個用於建立漂亮的 CAMediaTimingFunction 曲線的插件.官網
  • XcodeWay:便捷地導航到多個地方。官網
  • GitDiff:將與 git 倉庫中不一樣的代碼高亮。官網
  • MCLog:用於控制檯內容篩選的插件。官網
  • XToDo:一個顯示項目中 TODO,FIXME,??? 和 !!! 列表的對話框。官網
  • CopyIssue:使複製 Xcode issuse 描述更簡單。官網
  • RTImageAssets:自動生成所需的所有 App 圖標的插件。官網
  • BBUncrustifyPlugin-Xcode:使用 ClangFormat 或 Uncrustify 格式化代碼的插件。官網
  • Aviator:這個插件將 AppCode 的 ⇧⌘T (source/test 切換) 帶到 Xcode 中.官網
  • JumpMarks:使用有序的書籤爲你的代碼作導航。官網
  • XCSnippetr:直接上傳代碼片斷到 Slack 和 Gist 的 Xcode 插件。官網
  • Peckham:使用 #import 引用項目中的任何文件,提供代碼提示。官網
  • MLAutoReplace:快速編碼以及代碼格式化插件,提高你的編碼速度。官網
  • Chameleon:iOS (Obj-C & Swift)的扁平化顏色框架。★官網
  • AutoHighlightSymbol:高亮被選中的符號對應的全部實例。官網
  • Reveal-In-GitHub:用一個快捷鍵就能夠跳轉到 GitHub 倉庫的 History, Blame, PRs, Issues, Notifications。官網
  • CleanHeaders-Xcode:相似 iSort 的頭文件排序和重複消除插件,讓你的頭文件看起來更加有序。官網
  • Luft:幫助你實現輕量的 View Controller 的 Xcode 插件。官網

主題

  • Dracula Theme:一個 Xcode 的暗色主題(仿 SublimeText).官網
  • Xcode themes list:Xcode 的多彩主題。官網
  • Solarized-Dark-for-Xcode:用於 Xcode5 的 Solarized Dark 主題.官網

其餘 Xcode 插件

  • Synx:一個從新組織你的 Xcode 項目的命令行工具,它可以讓你的 group 和文件夾對應起來。官網
  • dsnip:能夠在本地爲全部的 UIKit 協議/代理方法(UITableView,...)生成 Xcode 代碼片斷的工具。官網

編碼規範

好網站

中文站點

  • 伯樂在線 iOS 頻道:分享 iOS 和 Swift 開發,應用設計和推廣,iOS 相關的行業動態。官網

英文站點

新聞,播客和其餘

UIKit 文檔

論壇和討論列表

教程和 Keynotes