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

來源:互聯網
上載者:User

摘要: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廣播內建;
  • 支援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應用開發,它都深受開發人員喜愛。

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表格、網格,支援新增和刪除網格,動態添加或刪除列表,在表格中加入多行文字、圖片等,支援手勢識別和自訂事件。

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.