Skip to content

Latest commit

 

History

History
398 lines (280 loc) · 23.7 KB

README.md

File metadata and controls

398 lines (280 loc) · 23.7 KB

Srefan-iOS

LanguageLicense

Swift 版本请点击这里

目录


库和框架

数据存储

  • SAMKeychain: 一款使用系统钥匙串对可获得账户获取设置删除密码的iOS简单封装的框架.

缓存

  • YYCache: 高性能iOS缓存框架.

序列化

Core Data

图表

  • AAChartKit: 流行的开源前端图表库Highcharts的基础上,封装的面向对象的,一组简单易用,极其精美的图表绘制控件.
  • PNChart: 一个简洁高效的iOS图表库.
  • ZFChart: 一款简单好用的图表库,有柱状,线状,饼图,波浪,雷达,圆环等类型.
  • BEMSimpleLineGraph: 一款优雅的折线图框架.

数据库

  • FMDB: 基于SQLite封装的Cocoa/ObjC数据库的第三方框架.
  • OHMySQL: 一款App直连后台MySQL数据库的库.
  • : 一款移动数据库,可替换Core Data和SQLite.

硬件

  • GBDeviceInfo: 在运行时检测当前iOS或macOS设备硬件软件信息的第三个框架.

动作

蓝牙

  • BabyBluetooth: 简单易用的蓝牙库,基于CoreBluetooth的封装.

位置

iBeacon

事件总线(EventBus)

文件

  • ZipArchive: SSZipArchive是一款针对iOS,macOS和tvOS的简单实用的压缩解压缩的第三方框架.
  • FCFileManager: NSFileManager之外的iOS文件管理器,用于简化文件管理.

格式解析

JSON

  • JSONModel: 一个快速巧妙的创建JSON数据模型的库.

CSV

XML&HTML

  • hpple: 一款使用XPathQuery库解析HTML的ObjC封装的第三方框架.

日志

  • CocoaLumberjack: 一个快速简单好用的日志框架.
  • NSLogger: 一款用来监控macOS,iOS和Android app的日志的工具,默认接受电脑所在局域网发出的所有日志,在macOS上运行NSLogger Viewer,来替代Xcode,Android Studio和Eclipse终端.

地图

浏览器

  • KINWebBrowser: 一款应用内的Web浏览器模块.
  • WebViewJavascriptBridge: 用于在WKWebViews/UIWebViews/WebViews中的ObjC和JavaScript之间发送消息的iOS/OSX桥接器.
  • RxWebViewController: 实现类似微信的webView导航效果,包括进度条,左滑返回上个网页或者直接关闭,就像UINavigationController.
  • TUSafariActivity: 用Safari打开URL连接的UIActivity子类.
  • ARChromeActivity: 用Google Chrome打开URL连接的UIActivity子类.
  • XLForm: 创建动态表格视图表单最灵活最强大的iOS库.

多媒体

图片

  • LKImageKit: 腾讯开源的一个高性能的图片框架.包括了图片控件,图片下载,内存缓存,磁盘缓存,图片解码,图片处理等一系列能力.
  • SDWebImage: 一款知名高效的图片加载框架,其使用内存缓存,磁盘缓存和下载的方式加快了图片处理的效率.
  • RSKImageCropper: 一个iOS的图片切片器,适用于头像的场景.
  • TZImagePickerController: 一个支持多选,选原图和视频的图片选择器,同时有预览,裁剪功能.
  • GPUImage: 基于GPU的图像和视频处理一个开源的iOS框架,可以处理图像,给图片和视频增加滤镜等.
  • ZLPhotoBrowser: 方便易用的相册多选框架,支持预览/相册内拍照及录视频,拖拽/滑动选择,3DTouch预览,编辑裁剪图片/视频,导出视频,支持多语言国际化,在线下载iCloud端图片,支持预览网络及本地图片/视频.
  • MFPictureBrowser: 一个集成简单交互效果不错的图片浏览器.
  • SVGKit: 用本地动画库渲染SVG矢量图片显示和交互的第三方框架.
  • MWPhotoBrowser: 一个简单的iOS图片视频浏览器,支持网格视图,标题信息等.

音频

视频

  • ZFPlayer: 一款基于AVPlayer,支持竖屏,横屏(横屏可锁定屏幕方向),上下滑动调节音量、屏幕亮度,左右滑动调节播放进度的播放器.
  • JPVideoPlayer: 在UITableViewCell内自动播放在线视频和缓存视频.
  • SJVideoPlayer: 基于AVPlayer的视频播放器,支持截屏,创建Gif,导出片段,显示提示文本.

流媒体

  • LFLiveKit: 一款开源的RTMP流SDK,支持H264和AAC硬解码,支持GPUImage Beauty,rtmp传输,弱网络丢帧,动态切换速率.

PDF

GIF

VR

AR

二维码

  • LBXScan:基于iOS原生扫描框架开发的扫描工具封装,其中包括微信、QQ、支付宝等软件的扫描页面实现.

OCR

  • TesseractOCRiOS:将图像的文字转化成为字符的三方库,需要引入需要的识别字库,通常用到的只是字母数字字库,汉字库体量很大,在工程中创建一个名为“tessdata”的文件夹,将字库放到文件夹下,即可开始使用.

消息

网络

  • AFNetworking: 一个轻量级的iOS网络通信类库.
  • YTKNetwork: 基于AFNetworking封装的iOS网络库,其实现了一套High Level的API,提供了更高层次的网络访问抽象.
  • PPNetworkHelper: 对AFNetworking 3.x与YYCache的二次封装.
  • BANetManager: 基于AFNetworking 3.x版本的封装.

Socket

  • CocoaAsyncSocket: 基于BSD-Socket的IM框架,强大的异步套接字库,向上封装出简单易用ObjC接口.

IM

网络测试

  • Reachability: 代替原生Reachability类的解决方案,目前通过不了审核.
  • RealReachability: 另外一个实际网络检测的解决方案.

推送通知

Passbook

权限

  • ClusterPrePermissions: 在系统询问用户前展示开发者自己的请求许可,从而减少了用户跳出应用进行设置的几率.同时应用可以再次选择一个合适的机会请求用户许可.

URL Scheme

文本

  • TTTAttributedLabel: 一个富文本的UILabel替代方案,支持链接,数据检测,属性等.
  • RegexKitLite: 一个正则表达式的ObjC框架.
  • MitRegx:用来校验手机号格式,密码格式,验证码格式和Email格式的ObjC框架.

UI

布局

  • Masonry: 应用最广的简单方便的自动布局框架.
  • SDAutoLayout: 号称一行代码搞定自动布局!支持Cell和Tableview高度自适应,Label和ScrollView内容自适应,致力于做最简单易用的AutoLayout库.

日期与时间

  • DateTools: 一款ObjC中简化日期和时间处理的工具.

启动页和引导页

  • XHLaunchAd: 开屏广告,启动广告的解决方案,支持静态/动态图片广告,mp4视频广告,全屏/半屏广告.
  • Onboard: 一个简单创建漂亮有吸引力引导页的第三方框架.

Tabbar和NavigationBar相关

  • CYLTabBarController: 一个自定义的TabBarController框架,支持高度自定义,功能强大,使用起来非常方便.
  • KMNavigationBarTransition: 一个用来统一管理导航栏转场以及当push或者pop的时候使动画效果更加顺滑的通用库.
  • TLYShyNavBar: 一款实现自动滚动的导航条的控件框架.
  • HBDNavigationBar: 一款随着页面切换而平滑地过渡到目的状态的UINavigationBar控件.
  • NNNavigationBar:另一个背景渐变平滑过渡的UINavigationBar控件.
  • JZNavigationExtension: JZNavigationExtension为UINavigationController集成了许多方便的功能.
  • YPNavigationBarTransition: 一个功能完整的UINavigationBar框架,过渡效果更平滑.
  • RTRootNavigationController: 隐式的让每个ViewController都有NavigationBar.
  • WMPageController: 一个顶部Tab的二级导航页面视图框架,类似网易新闻首页效果.
  • DLSlideView: 另外一个顶部Tab的二级导航页面视图框架.
  • VTMagic: 第三个二级导航页面视图框架.
  • MXSegmentedPager: 具有视差页眉的分段页面视图,MXPagerView与HMSegmentedControl相结合,控制页面选择.

Table相关

  • IGListKit: 一款Instagram工程师开发的快速构建且滑动流畅的CollectView框架.
  • STDTableView: 基于UITableView的封装,实现了一套High Level的API.
  • SWTableViewCell: 一款简单易用的UITableViewCell子类, 扩展了左右滑动显示更多功能按钮.
  • MGSwipeTableCell: 另外一款扩展左右滑动显示工具按钮的UITableViewCell子类.
  • MJRefresh: 一款简单好用的下拉刷新的第三方框架.
  • ODRefreshControl: 一款对UIScrollView下拉刷新的控件.
  • SVPullToRefresh: 一行代码实现UIScrollView下拉刷新和无限滚动.
  • DZNEmptyDataSet: UITableView/UICollectionView空数据提示内容显示的控件.
  • CYLTableViewPlaceHolder: 一行代码完成'空TableView占位视图'管理的控件.
  • CSStickyHeaderFlowLayout: 在UICollectionView上实现StickyHeader效果.
  • MXParallaxHeader: 一个简单的UIScrollView Header类.
  • MXPagerView: 可重用的支持StoryBoard的Pager视图.

HUD与Toast

  • YBHud: 一个简单的点动画,轻量级的指示器HUD.
  • SVProgressHUD: 一个进度加载的第三方控件.
  • MBProgressHUD: 另外一个非常流行的进度加载的第三方控件.
  • RKDropdownAlert: 一个非常简单的向下弹出Alert视图的控件,灵感来自于SVProgressHUD.
  • JDStatusBarNotification: 一个简单,可定制的状态栏显示通知控件.
  • CWStatusBarNotification: 另外一个基于文本的状态栏通知控件.
  • TSMessages: 从屏幕顶部显示通知视图的非HUD风格的iOS提示框,目前该项目不再更新.
  • RMessage: TSMessages的替代方案.
  • CRToast: 一个简单的Toast显示通知控件.
  • SCLAlertView-Objective-C: 一个漂亮的AlertView控件.
  • Toast: 添加Toast通知到UIView上的ObjC类别.

PopView

  • PSTAlertController: 向下兼容iOS7使用UIAlertController的第三方框架.
  • MMPopupView: 一款简单的创建PopUpView的Pop-Up控件.
  • IGLDropDownMenu: 一种iOS点击下拉菜单样式,动画效果很绚丽.
  • WSCoachMarksView: iOS类用来在现有界面上浮动出一个圆角的提示信息框.

进度条

轮播图

  • YJBannerView: 使用简单功能丰富的轮播控件,基于UICollectionView实现,多种场景均支持使用.

日历

  • FSCalendar: FSCalendar是一款开源iOS日历控件,支持横向,纵向滑动模式,全屏模式,带有子标题,事件设置等功能.
  • JTCalendar: 一款简单可自定义的日历控件.

键盘与输入法

  • IQKeyboardManager: 解决弹起键盘遮盖输入框的问题的便捷方案.
  • TPKeyboardAvoiding: 另外一个解决弹起键盘躲避文本框遮挡的通用方案.
  • SlackTextViewController: 功能强大易用的TableView和CollectionView下的文字输入解决方案,具有文字输入框高度自适应,自动输入,复制单元格内容等特点.
  • FontAwesomeKit: 一个iOS icon字体库,支持Font-Awesome,Foundation icons,Zocial以及ionicons.其字体即矢量图,可设置曲线动画渐变.

动画

  • lottie-ios: Airbnb开源的将AE动画效果转化为iOS原生动画的库.
  • pop: Facebook开源的基于物理交互的扩展动画库.
  • JazzHands:一款简单的基于关键帧动画的框架,动画可以通过手势,scrollview,KVO和ReactiveCocoa控制.
  • iCarousel: 一个简单,可自定义的数据驱动的3D轮播框架,旨在简化在iPhone,iPad和macOS上实现各种类型的轮播操作.
  • DGActivityIndicatorView: 一个比UIActivityIndicatorView更好看的显示加载进度的控件.

效果

定制化控件

  • STPickerView: 一个多功能的选择器,有城市选择,日期选择和单数组源自定的功能,方便大家的使用,低耦合,易扩展.
  • JKCountDownButton:iOS倒计时按钮,UIButton子类实现,常常用于注册等发送验证码的时候进行倒计时操作.
  • VBFPopFlatButton: 使用Facebook POP引擎实现了9种扁平化按钮和2种动画,比如前进,后退,菜单,下载,分享,添加,减少,关闭以及向上的箭头等.
  • PYSearch: iOS中一款优雅的搜索控制器.
  • DLRadioButton: 一个高度自定义的iOS单选按钮控件.
  • FSTextView: 继承于UITextView的自定义TextView,带placeholder和可限制最大输入字符数.
  • HMSegmentedControl: 模仿Google产品的SegmentedControl的UISegmentedControl自定义控件.

App更新提示

  • Harpy: 版本更新工具,通知用户有新版本可升级.

测试调试

  • SandBoxPreviewTool: 一行代码查看iOS磁盘沙盒文件.
  • Bugly: 腾讯Bugly,为移动开发者提供专业的异常上报和运营统计,帮助开发者快速发现并解决异常,同时掌握产品运营动态,及时跟进用户反馈.
  • MLeaksFinder: 腾讯开源的iOS平台的自动内存泄漏检测工具.
  • DEPLOYMATE: 检测不可用的、废弃的API的工具,<收费,未开源>.

分析

支付

产品化工具

其他

  • RJIterator: 生成器与迭代器的ObjC实现,在异步调用方面的运用功能强大.
  • rubicon-objc: Python和ObjC语言之间的桥接器.

实用工具

  • BlocksKit: Block实用工具,可以把用delegate实现的方法整合成了block的形式.
  • ReactiveCocoa: 具有函数式编程和响应式编程特性的iOS和OS X开发的新框架.
  • SAMCategories: 一个对Foundation和UIKit类别的有用的扩展集合.

安全

区块链

逆向

数据结构/算法

机器学习