直接拿來用!最火的iOS開源專案(二)
“每一次的改變總意味著新的開始。”這句話用在iOS上可謂是再合適不過的了。GitHub上的iOS開源專案數不勝數,iOS每一次的改變,總會引發iOS開源專案的演變,從iOS 1.x到如今的iOS 7,有的專案已經被棄用,即使曾經的它很受開發者喜愛,有的專案則繼續發揚光大,新專案更是層出不窮。在本文中,我們將繼續為大家介紹20個在GitHub上非常受開發者歡迎的iOS開源專案,在這些專案中,有哪些是你經常使用的?又有哪些是你曾經使用過的?
21. SSToolkit
SSToolkit可以說是iOS開發者最常使用的工具類之一,該開源專案提供了一個完整的iOS類庫集合,用於解決iOS開發者在開發過程中常碰到的一些問題,比如追蹤一款裝置是否具有視網膜螢幕或是否能剪裁圖片,包含SSCollectionView、SSGradientView、SSSwitch等諸多非常方便的類。
如果想要對SSToolkit作進一步瞭解,可以在iPad/iPhone上使用SSToolkit的Demo應用SSCatalog。獲取更多資訊,可直接登陸S.S. TOOLKIT。
22. XMPPFramework
XMPPFramework是一個使用Objective-C編寫的用於Mac/iOS開發的XMPP框架,它提供了一個RFC-3920(XMPP標準)核心實現,通過某些特定工具讀寫XML。XMPPFramework有著非常豐富的建立在模組化架構之上的XEP擴充套件,開發者可以將其直接插入到程式碼中,使用GCD構成,即使是在非常老舊的iPhone或12核Mac Pro上,它都能高效運轉。
為了方面開發,蘋果iOS SDK提供了UISplitViewController用於iPad左右分欄介面顯示,但對於開發者而言,UISplitViewController使用起來並不方便,在開發過程中,總會遇到許多問題。於是,天才的iOS開發者Matt Gemmell在GitHub上發起了一個名為MGSplitViewController的開源UISplitView實現,它比蘋果官方UI元件所提供的分欄類功能更加豐富。
最初Matt編寫MGSplitViewController只是為了方便自己使用,但最終Matt決定將其開源,供所有iOS開發者使用。如果想要了解更多關於MGSplitViewController的資訊,可直接登陸Matt Gemmell部落格檢視,也可點選連結,檢視視訊演示(需翻牆)。
24. CocoaLumberjack
CocoaLumberjack集快、簡單、強大、靈活於一身,和log4j等其他非常受開發者歡迎的日誌框架的概念類似,專為Objective-C設計,用於iOS和Mac,擁有多執行緒、GCD(如果可用)、無鎖原子操作和Objective-C執行時的動態特性。
PSTCollectionView是用於iOS 4.3及其以上版本中的UICollectionView的100%開源API相容替代品。如果想要使用UICollectionView,但仍然需要支援老版本的iOS,那麼這個專案你一定會非常喜歡。如果想要始終使用PSTCollectionView,使用PSTCollectionView作為類名稱即可。
當然,如果你想在iOS 4.3/5.x上使用PSTCollectionView,但在iOS 6上使用UICollectionView,可以在所有UICollectionView類上新增PS,以獲得對老版iOS的自動支援,這樣就可以隨心所欲如你所願地使用PSUICollectionView。
26. CocoaHTTPServer
CocoaHTTPServer是一個用於Mac OS X或iOS應用的輕量級、可嵌入的HTTP伺服器框架。有時候開發者需要在他們的App中內嵌一個HTTP伺服器。無論是具有遠端監控功能的伺服器應用,還是使用HTTP進行後端通訊的桌面應用,或者是提供無線訪問文件功能的iOS應用,CocoaHTTPServer都能滿足你的開發要求。
CocoaHTTPServer提供如下功能:
- 支援Bonjour廣播內建;
- 支援IPv4、IPv6;
- 非同步網路使用GCD和標準套介面;
- 密碼保護支援;
- SSL/TLS加密支援;
- 快速、高效;
- 伸縮性強;
- 大量註釋程式碼;
- 非常容易擴充套件;
- 還支援WebDAV。
27. PushSharp
在應用開發中,給App推送通知是很常見的方式。PushSharp正是這樣一個能夠實現向iOS(iPhone/iPad APNS)、Android(C2DM和GCM)、Windows Phone、Windows 8、BlackBerry(PAP)和Amazon(ADM)等多種作業系統推送訊息通知的開源C#伺服器端庫。
主要特性:
- 支援多平臺訊息推送;
- API能夠很流暢地為不同平臺建立通知;
- 自適應資訊頻道(自動增加或減少訊息連結);
- 使用非同步程式碼,基於Event為導向呼叫類庫;
- 100%程式碼託管,相容Mono框架;
28. HockeyKit
此前在GitHub上“最受歡迎的Android開源專案”系列文章(一)中,我們曾對HockeyKit進行了詳細的介紹。HockeyKit是一個用於iOS和Android下App更新的開發包,無論是iOS還是Android應用開發,它都深受開發者喜愛。
JTRevealSidebarDemo是一個能夠實現類似於Facebook客戶端和Path應用的檢視切換效果的Objective-C庫模板,其目的在於為開發者提供一個真正靈活的、可重用的解決方案。
JTRevealSidebarDemo可用於iOS 4.3和5.0應用開發,示例程式碼使用ARC構建,但該庫本身則相容ARC和非ARC。
PKRevealController是對ZUUIRevealController的進化,ZUUIRevealController能夠實現類似於Facebook客戶端的檢視橫向切換效果。而PKRevealController則是一個iOS檢視控制器的集合,能夠讓你實現多重控制器切換,非常靈活。
31. QuincyKit
QuincyKit是一個為iOS和Mac OS X提供的程式崩潰報告管理解決方案,提供客戶端開發包以及基於PHP開發的伺服器平臺。
主要功能:
- (自動)向開發者資料庫傳送崩潰報告;
- 由使用者決定每次崩潰是否傳送資料或總是傳送;
- 使用者可對是否選擇提供E-mail地址等額外資訊進行設定;
- 如果崩潰是已知的,向使用者提供即時反饋,並在接下來的更新中進行修復。
詳情請參考:QuincyKit官網
32. PSStackedView
PSStackedView能夠將你的UIViewControllers堆疊起來,實現了類似於Twitter iPad版應用效果的介面,專案發起人Peter Steinberger表示,PSStackedView的靈感正是來自於Twitter iPad的UI。
為了開發非常受歡迎的奧地利TV應用“3MobileTV”的iPad版,Peter創作了PSStackedView,開發者可以直接登陸App Store下載該應用。PSStackedView可執行在iPad和iPhone上,但相對而言,更適合用在iPad上。
33. Chameleon
作為一名iOS開發者,你應該對蘋果官方用於開發iPhone、iPod和iPad應用的UIKit框架很熟悉。Chameleon是一個完全獨立的可以直接替代UIKit在Mac OS X上執行的框架,和UIKit唯一的共性就是公共類和方法名稱。在大多數情況下,開發者不需要改動任何程式碼,即可直接在Mac上執行所開發的iOS應用。
Chameleon的原始碼是基於蘋果的文件而來,並沒有使用到任何私有API或其他未經Mac App Store批准的技術。如果想要了解更多關於Chameleon的資訊,可直接登陸ChameleonProject網站檢視。
Cocos2D-iPhone-Extensions整合了非常多的優秀的Cocos2D-iPhone引擎第三方擴充套件。該專案並沒有對Cocos2D進行任何改變,只是將新功能源源不斷地加入到Cocos2D-iPhone-Extensions中,供開發者使用。
35. DCIntrospect
Introspect是一個很小的iOS工具集,用於幫助開發者對使用UIKit構建的使用者介面進行除錯。特別適用於動態建立UI佈局、改變執行時,還能通過尋找透明檢視優化應用效能,並避免不必要的重繪檢視。
36. PSCollectionView
PSCollectionView是一個能夠實現Pinterest風格的瀑布流檢視顯示效果的iOS滾動元件,可用於類似的UITableView,支援顯示圖片和文字。
專案發起人Peter Shih在自己的iPhone/iPad應用Lunchbox中使用了PSCollectionView原始碼,開發者可以在App Store中免費下載該應用。
37. SDURLCache
NSURLCache及其子類提供了很多高階介面用於處理快取,但如果你想在自己的iPhone應用中通過HTTP請求的方式將快取儲存到磁碟中,推薦使用SDURLCache。Peter Steinberger在GitHub上託管的這個SDURLCache專案是Olivier Poitrey的SDURLCache的一個分支,支援iOS 5以下版本系統。
38. FastPdfKit
該開源庫包含著FastPdfKit iOS庫的一些示例專案。FastPdfKit是一個能夠讓你在iOS應用中顯示PDF文件的開發類庫,其最大的特點就是載入PDF文件速度特別快。
詳情請參考:FastPdfKit官網
39. KKGridView
KKGridView是一個高效能的iOS表格元件,但自WWDC 2012大會上蘋果推出了相關的解決方案之後,KKGridView也就逐漸停止使用了。每逢iOS系統更新,iOS開源專案勢必也會發生新一輪的改變,至於在顛覆了蘋果以往設計觀的iOS 7釋出之後,iOS開源專案又會發生哪些改變?還要看天才的開發者們!
40. MGBox2
MGBox2能夠實現非常酷的列表互動效果,使用最少程式碼,即可快速建立各種佈局效果的iOS表格、網格,支援新增和刪除網格,動態新增或刪除列表,在表格中加入多行文字、圖片等,支援手勢識別和自定義事件。
相關文章
- 直接拿來用!最火的iOS開源專案(三)iOS
- 直接拿來用!最火的iOS開源專案(一)iOS
- 直接拿來用!最火的前端開源專案(二)前端
- 直接拿來用!最火的Android開源專案(二)Android
- 直接拿來用!最火的前端開源專案(三)前端
- 直接拿來用!最火的前端開源專案(一)前端
- 直接拿來用!最火的Android開源專案Android
- 直接拿來用!最火的Android開源專案(三)Android
- 直接拿來用!最火的Android開源專案(一)Android
- 直接拿來用!最火的Android開源專案整理Android
- 國內最火的開源專案 —— Python 篇Python
- 直接拿來用 九個超實用的PHP程式碼片段(二)PHP
- 可能是國內最火的開源專案 —— Python 篇Python
- GitHub上最火的開源專案及程式語言是什麼?Github
- IOS開源專案iOS
- 直接拿來用!超實用的Java陣列技巧攻略Java陣列
- 開源之夏:502個專案上線,最火熱的暑期開源活動發車了!
- 直接拿來用 10個PHP程式碼片段PHP
- 可以直接拿來用的15個jQuery程式碼片段jQuery
- iOS 開源專案集合iOS
- IOS開源專案索引iOS索引
- 直接拿來用!10款實用Android UI工具AndroidUI
- Github 上的 iOS 開源專案GithubiOS
- Android專案中最火最常用的優秀開源專案Android
- IOS技術分享| ARCallPlus 開源專案(二)iOS
- 盤點 7 月份比較火的開源專案
- IOS開發常用GitHub開源專案iOSGithub
- 用於 Linux 的開放 BIOS開源專案介紹(轉)LinuxiOS
- 清理 iOS 專案無用的圖片資源iOS
- 清理ios專案無用的圖片資源iOS
- 掘金開源秀:來沸點展示你的開源專案
- iOS開源專案週報0323iOS
- iOS開源專案週報0406iOS
- 開源 iOS 專案分類索引大全iOS索引
- 近期GitHub上最熱門的開源專案(附連結)Github
- 10款GitHub上最火爆的國產開源專案Github
- 最值得關注的10個C開源專案
- GitHub實用開源專案Github