iOS开源项目大全(二)(整理自网络)

第二部分


1.完整客户端

github的iOS客户端,目前开源代码是V1版本,V2版本在appstore上可以下载

使用XMPP协议的IM开源软件,很强大,在appstore上可以下载

SegmentFault的官方iOS客户端

开源中国社区oschina的官方iPhone客户端,appstore已上线。早期地址在github上,后来迁移到OSChina自己的代码托管平台.

实现了日历的基本功能,目前只支持iPad版本

美国白宫(WhiteHouse)的官方app,听起来很高大上哈

Ruby China的官方app

一款不错的日程管理软件,Appstore上能下载

第三方twitter客户端,不过作者上传后至今5年了都没更新过。。。

移动支付公司Square在其工程博客上宣布,基于Apache 2.0许可协议,开源了于去年12月初收购的照片管理和共享应用Viewfinder,包括Viewfinder服务器、Android和iOS应用在内的25万行代码已托管到GitHub上。 对此,Square工程师Peter Mattis在<a href="" "="" style="color: rgb(128, 0, 128); text-decoration: none; outline-style: none;">工程博客上表示,Square之所以考虑到将Viewfinder的完整代码公之于众,是希望能够与人方便,让开发者在应用开发过程中可以加以利用或作为参考。尽管Square团队并没有为Viewfinder提供技术支持,也没有进行Bug修复,但此举还是赢得了满堂喝彩一致点赞。

Viewfinder包含了许多非常有趣的代码,对于开发者来说,绝对是大大的Surprise,主要如下:

. Viewfinder服务器提供了一个拥有各种Amazon DynamoDB索引选项的结构化数据库架构。 . 服务器还提供了数据库和协议层版本控制支持。 . 在本地元数据存储方面,Viewfinder客户端使用LevelDB,相比CoreData,更易于使用,也相当便捷。 . 内置可直接运行于移动设备上的全文本搜索引擎,支持联系人和图片搜索。 . 使用GYP生成Xcode项目文件和Android构建文件。 . 支持C++模板元编程,可使用C++11可变参数模板根据C++方法自动计算Java方法签名。 

该段介绍出自这里

viewfinder使用GYP生成Xcode的工程文件,生成方式如下:

首先要安装GYP,执行以下步骤:

 

1
2
3
4
$ svn checkout http://gyp.googlecode.com/svn/trunk/ gyp-read-only  $ cd gyp-read-only  $ ./setup.py build  $ sudo ./setup.py install 

 

安装成功以后,再进入到clone下来的viewfineder源码目录,执行:

 

1
2
$ cd viewfinder/clients/ios $ gyp --depth=. -DOS=ios -Iglobals.gypi ViewfinderGyp.gyp

 

这样就能成功生成Xcode工程文件了,不过需要通过ViewfinderGyp.xcodeproj文件打开工程。

Hacker News的iPhone客户端

iOS资深开发者罗朝辉做的一款应用,《美式英语》的iPhone版本

使用新浪微博开放平台做的微博客户端,做工略显粗糙,作者也有几个月没更新了。

AppStore上线产品,中文名称已阅。一个iOS设备上的RSS/Atom阅读器,刚成立的项目,还有很多有待完善的地方。

2.Xcode插件

用于在Xcode中管理CocoaPods依赖库

方便实现代码对其功能,使代码风格统一

一个辅助代码编辑插件。支持高亮选中、批量选中方法和方法名、根据选中的方法批量生成方法声明、高亮正则搜索等功能。

一个神奇的Xcode 插件,能让应用在运行的时候做出的小的改变立马体现效果,而不需要重新编译。。。

以图形化界面管理Xcode插件的插件。

当输入[NSImage imageNamed:或者[UIImage imageNamed:时,会自动补全工程中可用的图片名称,同时能提供选中图片的预览。

能以图形界面列表的形式列出代码中添加了TODO,FIXME,???,!!!!标识的项目,方便解决软件中备注的未解决问题。另外,能查找的还不只上述四种标识,用户可以自己添加想支持的标识。

快速查找工程中的文件、代码等资源,和Xcode5自带的Open Quickly功能相似。

提供了为代码增加注视的最快捷方式,是我使用频率最高的插件,猫神出品。

3.工具

能详细打印出一个某个方法被调用的堆栈,方便调试时定位问题

在上传AppStore时需要填写app的描述信息,此软件能很方便的填写这些信息。

facebook出的自动编译工具,不像xcodebuild,它能够整洁的打印出日志

用于生成兼容armv6/armv7/i386framework的Xcode工程模版:

对访问iOS Keychain的封装库。

这是目前我已知的唯一一个支持对SQLite加密的免费开源库,对应的有收费版本。本开源库实现了对SQLite开源免费版本中未实现的加密接口,同时做了一定的扩展。使用的是256位AES加密方式。

强烈推荐!

AFNetworking作者、mattt大神开源的常用Xcode代码片段。

4.开发框架

facebook那神奇的动画引擎,你懂得。。。

pop

facebook出品,基于Cocoa的KVO开发,提供简单地使用方式,同时也是线程安全的。

通过method swizzling技术,能够在一个类的现有方法执行之前或之后附加一个代码片段(以block方式),能极大的方便我们调试。

十分强大的PDF开发框架,有异步加载、预览、编辑、加标注等很多功能

使用简单,功能强大的图表工具

TEAChart

一个联系人搜索库,支持的搜索方式包括:用户名汉字、拼音及模糊搜索,号码搜索,最重要的是支持T9搜索,做过通讯录类应用的同学都懂的。我在项目里用过,很赞。

应该是XMPP协议Objective-C实现的最好版本,小型开发者想做IM应用的好选择,使用起来也很方便。

一个通用聊天界面框架,效果不错,感谢作者的开源。这个框架后来被国内某无耻程序员修改成MessageDisplayKit,大有据为己有之势。

一个开发者积累多年的开发框架,值得看看。

几何图形框架,把AGGeometryKit和POP结合起来使用,可实现非常棒的动态和动画。

IMQuickSearch是一个快速搜索工具,可以过滤包含多种自定义NSObject类的NSArray。

新加坡开发者honcheng实现的图标制作框架,支持折线图、饼状图等。

5.自定义view

仿照UITableView机制自己实现的一个自定义tableview,带有详细的说明文档

很炫的带有表格的视图控制器切换效果,点击每个栏目会有限带有波浪效果的信息展示,类似于Facebook Paper

AMWaveTransition

又是facebook出的,可以让view展示波光粼粼的效果

Shimmer

仿照系统的UICollectionView的API实现的collection view,支持ARC和iOS4.3+系统,可用于替代只能从iOS6开始支持的UICollectionView

各种形式在状态栏展示信息,包括提示、进度等,展示格式和动画方式也有好几种。下图只是以静态方式展示其效果,更多详情请点击链接查看。

JDStatusBarNotification

一个球形3D标签,能够放大、缩小、拖动、点击、自动旋转。效果挺玄的,就是感觉有点卡,还有一定的优化空间。下图截了一个静态图片:

SphereView

iOS7风格的侧滑菜单,支持左右双向侧滑:

RESideMenu

一种在view的顶部弹出并会自动消失的通知类view,是toast的一种变形。目前开源中国的项目正在用该view。

大麦网iOS客户端工程师开源的一个HUD view,

自定义的下拉菜单

能够实现在多个图层上以不同速度滑动的自定义ScrollView,可用于做软件启动时的help界面:

自定义的日历,界面很简洁,月份切换时动画效果也不错。

功能较齐全的attributed lable,支持attributed string和图片、链接、控件的混排。

实现了相当炫的拉幕式的界面切换效果,其灵感来自CALayer的私有属性meshTransform以及和其对应的CAMeshTransform

新浪微博开发者仿照Twitter的iOS客户端中的效果实现的向下拉动滚动视图,视图顶端的图片会随着下拉而变大,并且带有模糊的效果。

模仿系统邮件应用实现的联系人选择界面。

一个扁平化的,能带声波效果的按钮。

新加坡开发者honcheng实现的折纸效果的界面切换,适合做电子书阅读类应用。

新加坡开发者honcheng多媒体显示view,支持html语法,应用非常广泛。


第三部分

NJKWebViewProgress是一个UIWebView的任务进程接口库,目前UIWebView并没有官方的进程接口,这个模块可为你提供应用内阅读器进度指示。
附件:
/cms/uploads/soft/131220/4196-131220110915.zip
 
TurtleBezierPath是UIBezierPath的子类,可实现Turtle Graphics的绘图方式。Turtle Graphics是一种简单的直观的绘图系统,通过一些列的指令(直走、返回、左弧形、右弧形、向上和向下等)来简单完成复杂矢量图形的绘制。
附件:
/cms/uploads/soft/131220/4196-131220111012.zip
 
XToDo是Xcode的一个注释辅助插件,主要用于收集并列出项目中的`TODO`,`FIXME`,`???
安装方法:
下载zip Dropbox
加压后把xcplugin文件放到文件夹~/Library/Application Support/Developer/Shared/Xcode/Plug-ins/
重启Xcode,随便打开一个项目后 按 ctrl+t就可以打开关闭列表窗口了
附件:
/cms/uploads/soft/131220/4196-131220111105.zip
 
一个利用Nodelike框架把Node.JS解析集成在iOS app的例子工程。Nodelike是一个使用iOS 7的JavaScriptCore.framework和OS X Mavericks,简单实现了Node.JS-compatible接口的工程。
附件:
/cms/uploads/soft/131220/4196-131220111146.zip
 
可实现类似iOS 7 Mail应用的滑动展示操作选项的效果。
附件:
/cms/uploads/soft/131220/4196-131220111437.zip
iOS 7中,UIAlertView的addSubview已经不能使用了,作为一个解决办法,创建了一个iOS 7风格的对话框--可以加入任何UIViews和buttons,不需要图片和其他资源。
附件:
/cms/uploads/soft/131220/4196-131220111609.zip
仿照iOS 7主屏幕的视差效果。
附件:
/cms/uploads/soft/131220/4196-131220111F1.zip
 
FXBlurView是一个UIView子类,是iOS 7实时背景模糊效果的替代选择,支持iOS 5.0以上系统,简单快速。FXBlurView提供了静态和动态两种模式。
附件:
/cms/uploads/soft/131220/4196-131220111P6.zip
 
MBContactPicker是一个使用UICollectionView,可类似苹果iOS 7邮件应用联系人选择器效果的Picker Library,可以被放在任何项目中,使用interface builder,并且只需几行代码。
测试环境:Xcode 5.0,iOS 6以上
附件:
/cms/uploads/soft/131220/4196-131220111912.zip
 
Freestyle 是一个简单但很强大的界面框架,可以用来定义手机 App 的外观,通过结构化的 CSS 和 Sass 实现。用来开发iOS原生高性能的应用。

FreeStreamer是一个低内存耗用的音频流播放引擎,支持iOS(FreeStreamerMobile)和OS X(FreeStreamerDesktop)。FreeStreamer用C 写成。
功能和特征:
占用内存空间小,效率高(Objective-C方法调用没有额外消耗)
支持ShoutCast和IceCast音频流媒体标准协议
可基于内容类型检测流媒体格式
支持ShoutCast元数据
支持暂停(比如通话进行中)
支持后台播放
Supports ID3v2规格
支持Podcast RSS feeds
附件:
/cms/uploads/soft/131219/4196-131219110U7.zip
RX是NSRegularExpression的一个延展,它可以把Object-C中的很多正则表达式合并成一个,简化了代码。
附件:
/cms/uploads/soft/131219/4196-131219110952.zip
 
 
项目需要,加了长时间后台定位(计时器控制后台运行时间),现在把代码发给大家哈
本人只测试了定时一小时控制后台获取位置信息,肯定可以更长时间的运行,不过耗电那是当然的了,所以做类似软件一定要先提醒用户,避免被拒和被用户差评!
附件:
/cms/uploads/soft/131219/4196-131219111041.zip
类似instagram图片、视频等资源的缩放动画View来查看详细内容,根据ImageView的位置进行缩放,并且还有查看语音资源的播放功能,注意:资源文件可是网络的,也是可以是本地的,方便自定义使用,并且还具有iOS7背景毛玻璃效果,可以自定设置是否开启。
附件:
/cms/uploads/soft/131219/4196-131219111124.zip
appledoc是一个帮助Objective-C开发者从源码注释生成类似苹果风格源码文档的命令行工具,目的是尽可能地保持注释的易读性,并使用相关代码生成HTML或者可浏览的Xcode文档集。appledoc由100% Objective-C写成,容易调试。可以简单自定义输出。
附件:
/cms/uploads/soft/131219/4196-131219111258.zip
 
使用Objective-C编写iOS或者OS X应用时,每次对参数或者代码一些细微的调整都需要重新编译资源,然后重启应用查看变化。RestartLessOften提供了一些工具用以减少应用重启次数,比如当你调整数字、字符串、颜色、图片、OpenGL shaders以及xib文件时等等。
为了让代码能够使用RestartLessOften,你首先需要在Xcode项目中添加一些源文件,并为app创建配置文件,这样在运行时可以进行调整,并把更参数更改传递到应用中。如果已经安装了另一个可选的Xcode插件--XcAddedMarkup,你可以在Xcode source editor中通过弹窗来更改参数。
附件:
/cms/uploads/soft/131219/4196-131219111417.zip
一款App Store上线的货币转换应用--Concurrency的源码。ConcurrencyApp Store地址 https://itunes.apple.com/app/concurrency/id738872892 
附件:
/cms/uploads/soft/131216/4196-131216150545.zip
JBChartView是一个非常优秀的图标库,有着模仿UITableView但简化设计的API,可以帮你做出漂亮的折线图和柱状图,还支持高度自定义设计,以及可展开/收索的动画。
附件:
/cms/uploads/soft/131216/4196-131216150T6.zip
DHSmartScreenshot是一个可以为table view完整截图的库。通过DHSMartScreenShot可以获取整个UITableView的截图,甚至是特定某一行的截图。
附件:
/cms/uploads/soft/131216/4196-131216151005.zip
MWOpenInKit提供了一种较为简单的,用于处理iOS app中第三方URL schemes的方法。
作为开发者,你可能希望能允许用户在Google Maps中打开链接,而不是内置的地图。这样需要写不少自定义代码以确定是否安装了Google Maps,询问用户他们更喜欢哪一个,以及理想化地记住用户偏好。
对于用户来说,MWOpenInKit提供了一个更为美观的选择界面来选择哪一个第三方app来执行行动。对开发者来说,MWOpenInKit提供了一个更为优雅的紧密结合的API(基于语义动作),不用开发者手动构建URLs,不用手动检查用户安装了哪个app,MWOpenInKit会自动询问设备来弄清哪个app可用。
项目地址:https://github.com/lazerwalker/MWOpenInKit
Sol°是一款设计非常优雅的天气查询app。它使用Wunderground.com天气API的天气数据。编译时需要获得一个API密匙:http://www.wunderground.com/weather/api 否则会报错
附件:
/cms/uploads/soft/131216/4196-131216151354.zip
附件:
/cms/uploads/soft/131216/4196-131216151533.zip
都是图文并茂的UITableView,类似你喜欢的微博主页列表、SNS评论列表、分享图片列表、自定义UITableViewCell。
附件:
/cms/uploads/soft/131216/4196-131216151952.zip
这个教程将会教会你如何在后台传输数据,如何使用iOS7提供的多任务API。我将会教会你如何在后台下载一个文件,并且在文件下载完成时弹出一个本地的提醒。   后台数据传输起源于iOS6,允许在前台或者后台下载数据,但是时间是受限制的。最大的问题就是时间是受限制的让用户无法上传或下载大文件。这就是为什么苹果在iOS7上要提升框架的原因。 在iOS7中,这个功能有了很大变化,包括:
1.iOS系统管理上传和下载任务。
2.当用户关闭应用程序时后台仍然可以传输数据
3.时间不受限制
4.它可以在任意时间加入队列(前台或者后台)
5.应用程序需要被唤醒来获取验证,错误,或者完成情况
6.应用程序会有一个进度展示视图 后台传输可以应用在几个非常有用的地方:上传照片或者视频,结合后台提取和远程通知,用于保持应用程序在最新时间。
附件:
/cms/uploads/soft/131216/4196-131216152142.zip
重用性好、使用简单、可任意定制HUD样式(用的人去定制),默认有四种定制好的方式。
附件:
/cms/uploads/soft/131216/4196-131216152509.zip
RNBlurModalView 添加了一些深度传统模态/警报视图。调用视图非常类似于设置和显示UIAlertView。你也可以设置自己的自定义视图,并以一个模糊的背景展示。目标是使用天然的效果直接把用户的注意力焦点吸引至你的提醒警示信息。RNBlurModalView支持所有的iOS 设备,支持横屏和竖屏两种模式。
附件:
/cms/uploads/soft/131223/4196-131223155S6.zip
 
ASMediaFocusManager可以让用户通过点击app上任何缩放的图片,将图片放大。放大的图片自动变成全屏。再点击一下,图片会缩小回到原来的位置。每张图片view可能会因原始图片的不同有不同的变化,放大和缩小的图片动画会考虑到这些图片的原始变化。
附件:
/cms/uploads/soft/131223/4196-131223155932.zip
 
iOS来电信息语音提醒,无需越狱,需要iOS 7.0及以上版本。骚扰电话预警、来电归属地提醒、联系人姓名播报...不要试图把这个App提交到App Store。
 
此App使用了私有API获取来电号码,虽然API的调用经过伪装,能绕过自动检测,但是审核员会对此类App做特别关照,仍然有办法查出来调用的私有API。另外App常驻后台的做法也可能违反审核条例。
附件:
/cms/uploads/soft/131223/4196-131223160153.zip
 
AGGeometryKit可以帮你创建CATransform3D动画效果,可计算多个视图间的偏移角。
测试环境:Xcode5.0,iOS4.3以上
附件:
/cms/uploads/soft/131223/4196-131223160249.zip
 
FancySegue的过渡动画使用OpenGL ES渲染。过渡动画包括:3D box,Tile fly以及Cloth flip
附件:
/cms/uploads/soft/131223/4196-131223160531.zip
 
CollapseClick可实现可折叠列表功能,类似于UITableView。点击每个表格右边的小三角,可展开或者折叠内容。
附件:
/cms/uploads/soft/131223/4196-131223160608.zip
 
CocoaLumberjack是一款针对Mac和iOS平台的日志框架,快速、简单、功能强大,并具有极好的灵活性。CocoaLumberjack类似于log4j,专门为Objective-C设计,充分利用了多线程、GCD(如果可用的话)、无锁原子操作以及Objective-C运行时的动态特征。
附件:
/cms/uploads/soft/131223/4196-131223160636.zip
 
CocoaSPDY是Twitter推出的针对iOS和 Mac OS X平台的SPDY开发包,可加快HTTP请求。
附件:
/cms/uploads/soft/131223/4196-131223160T1.zip
 

一个基于网格的带有动画效果的菜单视图,具有背景模糊效果,灵感来自Mailbox,扩展了多种需求。控件在某种程度上是自定义的。
附件:
/cms/uploads/soft/131225/4196-131225142029.zip
 
点击菜单,当前的视图和菜单视图进行切换。菜单很容易设置,你可以自定义偏移,字体,颜色以及其他更多内容。
要求Xcode 4.5及以上版本,苹果LLVM编译器,iOS 5及以上版本,支持ARC。
附件:
/cms/uploads/soft/131225/4196-131225142115.zip
 
REMenu for iOS可实现类似Vine的下拉菜单效果
附件:
/cms/uploads/soft/131225/4196-131225145356.zip
 
REFrostedViewController带有iOS7风格和模糊效果的弹出式侧边菜单
要求:Xcode 5及以上,iOS 6.0及以上,Apple LLVM编译器,ARC
附件:
/cms/uploads/soft/131225/4196-131225150210.zip
一个iOS 7设计风格的控制中心式的导航栏——毛玻璃效果,扁平化设计以及定制动画全部融于其中。
附件:
/cms/uploads/soft/131225/4196-131225142312.zip
 
一个非常好的侧边栏目录控件。它支持所有的屏幕尺寸,支持重力感应,支持storyboard,支持自定义过渡。此外可定制动画、交互以及布局。这个例子实现了折叠,放大缩小以及UIKit Dynamics的各种过渡动画。
附件:
/cms/uploads/soft/131225/4196-131225142G8.zip
类似QQ邮箱客户端弹出式菜单效果
附件:
/cms/uploads/soft/131225/4196-131225142T9.zip
 
Facebook和Path使得侧滑菜单成为众多应用的选择,通常应用会从左向右滑动展示更多内容。iOS 7中,苹果鼓励应用使用整个屏幕,不要再依赖20pt的状态栏。TWTSideMenuViewController是一个针对iOS 7侧滑菜单的新设计,Dribbble上很多设计师也开始为iOS 7的侧滑菜单寻找一个新的展示方式。
附件:
/cms/uploads/soft/131225/4196-131225143Z2.zip
SCSlidingViewController可以实现类似ECSlidingViewController的功能,灵感来自于Dribbble上的设计。
附件:
/cms/uploads/soft/131225/4196-131225144152.zip

HMSideMenu通过一个可爱的动画效果在界面的左侧、右侧,顶端和底部展现一组菜单控件。

附件:

/cms/uploads/soft/131225/4196-131225144613.zip

可实现类似Tumblr iOS app菜单视图的效果,完全使用core animation创建,简单易用,你也可以添加多项自己喜欢的项目,CHTumblrMenuView会自动进行排列。

要求:Xcode 5,iOS 5.0以上, 使用ARC

附件:
/cms/uploads/soft/131225/4196-131225145006.zip
MBAlertView是一个嵌入式的基于block的提醒和HUD 库,有着很好的动画效果,没有使用PNG格式,一切通过代码实现。
测试环境:Xcode 5.0,iOS 4.3以上
附件:
/cms/uploads/soft/140103/4196-140103111514.zip
 
Nocilla 是一个很棒的iOS 和 OS X 上测试 HTTP 请求的工具包,灵感来自于WebMock。
附件:
/cms/uploads/soft/140103/4196-140103111648.zip
UIImage-Helpers 可以创建模糊图片,截图,使用颜色来创建图像。
附件:
/cms/uploads/soft/140103/4196-140103111K0.zip
 
 
JWBlurView 一款 iOS 7 通过 UIToolbar 来创建覆盖或者是模糊效果的视图:允许使用storyboard或者编程的方式来创建,能够应用微妙色调的颜色,可以添加子视图。
附件:
/cms/uploads/soft/140103/4196-140103112023.zip
 
XHFriendlyLoadingView是模仿网易新闻的主页TableView加载的过渡提示LoadingView,有着比较友好的界面提示。
附件:
/cms/uploads/soft/140103/4196-140103112105.zip
 
 
优雅整齐的程序主界面效果。
附件:
/cms/uploads/soft/140103/4196-140103112258.zip
 
UITableViewCell展示了小的缩略图和细节大图的进出切换效果,不少app都使用了这个效果。MJTransitionEffect支持自定义。
测试环境:Xcode 5.0,iOS 4.3以上
附件:
/cms/uploads/soft/140103/4196-140103112401.zip
 
iPad上的视图切换过渡效果,点击小图,视图会从小图所在的位置向外延展。
附件:
/cms/uploads/soft/140103/4196-140103112526.zip
 
利用 CoreAnimation 实现物体的各种运动效果。即定好起点和终点,物体在这个移动过程中,按照某个线性或者非线性的速度来进行移动。这份代码支持的移动模式包括:Linear、Quadratic 
、Cubic、Quartic、Quintic、Sine、Circular、Expo、Elastic、Back以及Bounce.
附件:
/cms/uploads/soft/140103/4196-140103112145.zip
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值