“每一次的改变总意味着新的开始。”这句话用在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地址等额外信息进行设置;
- 如果崩溃是已知的,向用户提供即时反馈,并在接下来的更新中进行修复。
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表格、网格,支持新增和删除网格,动态添加或删除列表,在表格中加入多行文字、图片等,支持手势识别和自定义事件。
相关推荐
这个压缩包文件"收集GitHub上的Flutter开源项目源码_2021_03_20.zip"显然包含了2021年3月20日时,GitHub上的一些Flutter开源项目的源代码。这些源码对于开发者来说是极其宝贵的资源,可以用来学习、参考和实践...
14. **社区支持**:GitHub上的项目往往有活跃的社区,开发者可以通过讨论和提交问题来获取帮助。 15. **持续更新**:这些源码可能被作者持续维护和更新,以适应iOS的最新变化和技术趋势。 通过学习和借鉴这些源码...
ZXing(Zebra Crossing)是GitHub上一个知名的开源项目,主要致力于提供跨平台的条形码和二维码读取、生成库。这个项目被广泛应用于移动设备,尤其是Android平台,允许开发者轻松集成二维码扫描功能到自己的应用程序...
总之,“swift-新手引导”项目为初学者提供了一个良好的学习平台,通过实践GitHub上的开源项目,你可以逐步熟悉Swift语言,理解其设计理念,并掌握开发iOS等Apple平台应用程序的技能。记得动手编码,不断实践,这是...
以上这些开源项目只是GitHub上Android生态中的一部分,它们展示了Android开发的多样性和创新性。开发者可以根据自己的需求选择合适的项目,或者参考它们的源代码,提升自己的开发技能和应用质量。在不断变化的...
本资源集合包含了13套在Github上备受开发者关注的地图相关源代码,这些代码库可以帮助我们深入理解地图API的使用,学习如何在iOS应用中集成地图功能,以及实现各种地图特效和定制化需求。 1. **地图框架的理解与...
1. **GitHub**:作为全球最大的开源项目托管平台之一,GitHub上有大量优秀的Unity项目可供下载和参考。 2. **Unity Asset Store**:Unity官方资产商店不仅提供付费资源,也包含许多免费的开源项目。 3. **Unity官方...
【开源项目iOS开发】 在iOS应用开发领域,开源项目扮演着至关重要的角色,它们提供了丰富的功能库、框架和工具,帮助开发者快速构建高质量的应用。这个开源项目“技淘2.0”显然是一款针对iOS平台的应用,它可能包含...
这是一个开源项目,意味着任何人都可以查看、下载和修改源代码,这对于iOS开发者来说是一份宝贵的资源。通过研究这个项目,初学者可以了解如何构建类似的应用,有经验的开发者则可以借鉴其中的设计模式和优化技巧。 ...
GitHubPopular是一款以React Native技术为核心的移动应用,它为用户提供了一个便捷的途径来浏览GitHub上最受欢迎和热度最高的项目。这款应用具有跨平台的特性,不仅能在Android设备上运行,也能在iOS设备上正常使用...
标题 "开源中国iPhone客户端源码" 提供了一个关键信息,即这是一个与开源中国社区相关的iOS应用的源代码。开源中国是中国最大的开源技术社区,致力于推广和分享开源软件、开源项目,以及提供开发者交流的平台。这个...
蓝湖移动端辅助工具是一款专为开发者设计的开源项目,旨在简化移动端开发过程中控件属性的复制和粘贴操作。此工具的最新版本为v1.0.2,它能够极大地提高开发效率,尤其是在处理iOS和Android平台上的布局时。通过一键...
【标题】:“ios-云知道(已上线的开源项目).zip”是一个关于iOS平台的开源项目,名为“云知道”。这个项目已经在GitHub上发布,链接为:https://github.com/SouthCity/Only-the-clouds-know。从描述来看,虽然项目...
【iOS开源中国app完整源码】是一份针对iOS平台的开源项目,提供了开源中国社区的移动应用源代码。这份源码对于iOS开发者来说是一个宝贵的资源,可以深入学习和研究iOS应用开发,特别是对于想要了解社交类应用或者...
在iOS平台上,为应用程序添加Emoji键盘功能已经成为一种常见的需求,以增强用户交互和情感表达。开源项目"AGEmojiKeyboard"正为此提供了强大的解决方案。本文将深入探讨这个项目的细节,包括其核心特性、如何集成到...
10. **社区支持和更新**:作为GitHub上的开源项目,BottomBar有活跃的开发者社区,不断进行维护和更新,修复已知问题并添加新特性。遇到问题时,开发者可以查阅文档、查看示例代码或者向社区提问。 总的来说,...
在 GitHub 上创建自己的三方库是开发者分享和复用代码的一个常见实践,这不仅有利于代码的组织管理,也能促进开源社区的发展。以下是一个详细的步骤指南,帮助你创建并发布自己的三方库: 1. **创建 GitHub 项目** ...
github 上目前最大的swift 开源完整产品项目,由国际知名浏览器厂商Firefox 发起,Mozilla基金会支持,如果你有兴趣不妨为这个开源的浏览器贡献一点代码,也可以你自己学习用,利用涉及到各种相关iOS的技术,以及...
描述中提到的"git地址:<https://github.com/zhangsuya/SDScrollVertical.git>",意味着这是一个Git版本控制的开源项目,开发者可以在GitHub上找到项目的源代码、问题追踪、提交历史以及可能的贡献指南。GitHub是...