直接拿來用!最火的iOS開源項目

摘要:iOS每一次的改變,總會引起iOS開源項目的演變,從iOS 1.x到現在的iOS 7,有的項目已被棄用,有的則繼續發揚光大,新項目更是層出不窮。在本文中,咱們將繼續爲你們介紹20個在GitHub上深受開發者歡迎的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上,它都能高效運轉。
23. MGSplitViewController
爲了方面開發,蘋果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運行時的動態特性。
25. PSTCollectionView
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廣播內建;
支持IPv四、IPv6;
異步網絡使用GCD和標準套接口;
密碼保護支持;
SSL/TLS加密支持;
快速、高效;
伸縮性強;
大量註釋代碼;
很是容易擴展;
還支持WebDAV。

27. PushSharp
在應用開發中,給App推送通知是很常見的方式。PushSharp正是這樣一個可以實現向iOS(iPhone/iPad APNS)、Android(C2DM和GCM)、Windows Phone、Windows 八、BlackBerry(PAP)和Amazon(ADM)等多種操做系統推送消息通知的開源C#服務器端庫。

主要特性:

支持多平臺消息推送;
API可以很流暢地爲不一樣平臺建立通知;
自適應信息頻道(自動增長或減小消息連接);
使用異步代碼,基於Event爲導向調用類庫;
100%代碼託管,兼容Mono框架;

28. HockeyKit
此前在GitHub上「最受歡迎的Android開源項目」系列文章(一)中,咱們曾對HockeyKit進行了詳細的介紹。HockeyKit是一個用於iOS和Android下App更新的開發包,不管是iOS仍是Android應用開發,它都深受開發者喜好。
29. JTRevealSidebarDemo
JTRevealSidebarDemo是一個可以實現相似於Facebook客戶端和Path應用的視圖切換效果的Objective-C庫模板,其目的在於爲開發者提供一個真正靈活的、可重用的解決方案。

JTRevealSidebarDemo可用於iOS 4.3和5.0應用開發,示例代碼使用ARC構建,但該庫自己則兼容ARC和非ARC。
30. PKRevealController
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網站查看。
34. cocos2d-iphone-extensions
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表格、網格,支持新增和刪除網格,動態添加或刪除列表,在表格中加入多行文字、圖片等,支持手勢識別和自定義事件。 數據庫

相關文章
相關標籤/搜索