iOS 开发三方库收集

前言

一个APP的诞生肯定少不了站在巨人的肩膀上,所以使用这些开源的库,可以让你的开发更加的顺利,快速。

网络请求

MVC(Model数据转模型相关)

  • ObjectMapper(Swift)
    Swift中Model数据转模型使用,是MVC架构中绑定数据很有用的框架
    使用方法参考

  • EZSwiftExtensions(OC)
    OC 中数据转模型使用框架,具体用法Github上也有详细的讲解

  • MJExtension(OC)
    转换速度快、使用简单方便的字典转模型框架

  • AlamofireObjectMapper
    配合** ObjectMapper**使用的网络请求扩展

  • MBNetWork
    基于 Alamofire 封装的网络请求库,可以更方便地在视图上展示请求状态。配合Alamofire,ObjectMapper,AlamofireObjectMapper使用

  • HandyJSON(Swift)
    HandyJSON是一个用于Swift语言中的JSON序列化/反序列化库。
    与其他流行的Swift JSON库相比,HandyJSON的特点是,它支持纯swift类,使用也简单。它反序列化时(把JSON转换为Model)不要求Model从NSObject继承(因为它不是基于KVC机制),也不要求你为Model定义一个Mapping函数。只要你定义好Model类,声明它服从HandyJSON协议,HandyJSON就能自行以各个属性的属性名为Key,从JSON串中解析值。

图片加载

界面布局

键盘

  • IQKeyboardManager (Swift&&OC)
    你还在为处理键盘的弹出收起而苦恼吗?处理键盘遮挡问题,谁用谁知道,导入即可使用,不用增加代码。
 //几个属性,可在某些特殊界面定制
 #import <IQKeyboardManager/IQKeyboardManager.h>
 [IQKeyboardManager sharedManager].enable = YES; //是否启用
 [IQKeyboardManager sharedManager].enableAutoToolbar = YES;//是否显示上面的toolbar
 [IQKeyboardManager sharedManager].shouldResignOnTouchOutside = NO;//是否点击空白区域隐藏键盘

界面

- (void)initView {
   UIImageView *view = [[UIImageView alloc] initWithFrame:CGRectMake(100, 100, 1, 1)]; // create a view
    view.image = [UIImage imageNamed:@"img_190"];
   [self.view addSubview:view];
   [view.layer ensureAnchorPointIsSetToZero]; // set the anchor point to [0, 0] (this method keeps the same position)

   AGKQuad quad = view.layer.quadrilateral;
   quad.br.x += 20; // shift bottom right x-value with 20 pixels
   quad.br.y += 50; // shift bottom right y-value with 50 pixels
   quad.tr.x += 30;

   view.layer.quadrilateral = quad; // the quad is converted to CATransform3D and applied
}

navigationBar&&statusBar

  • FDFullscreenPopGesture(OC)
    丝滑的处理导航栏的显示和隐藏,直接导入项目中,不需要加入一行代码,下面是比较常用的两个设置。
//单个viewController 关闭侧滑手势
self.fd_interactivePopDisabled = YES;
//隐藏NavBar
 self.fd_prefersNavigationBarHidden = YES;

动画

  • spruce-ios(Swift)
    轻便的动画库,可以尝试使用,让app更吸引人

  • lottie-ios
    Lottie是一个可以解析使用【bodymovin】插件从 Adobe After Effects中导出的格式为 json 的文件,并在 iOS、Android、macOS、React Native 中进行解析使用的开源库。

刷新

  • MJRefresh(OC)
    上拉加载,下拉刷新,可以自定义实现多种样式

日期选择器

照片选择

  • TZImagePickerController
    一个支持多选、选原图和视频的图片选择器,同时有预览、裁剪功能,支持iOS6+,微信风格

日历

工具

  • TalkingData
    移动数据服务平台,可以对app进行多方面的监测,用于统计数据分析等。
  • 信鸽推送
    顾名思义,是移动App推送平台
  • ShareSDK
    提供社会化功能,集成了一些常用的类库和接口,缩短开发者的开发时间,还有社会化统计分析管理后台,支持包括QQ、微信、新浪微博、腾讯微博等国内外40多家的主流社交平台,帮助开发者轻松实现社会化分享、登录、关注、获得用户资料、获取好友列表等主流的社会化功能。
  • 腾讯Bugly
    腾讯Bugly,为移动开发者提供专业的异常上报,运营统计和内测分发解决方案,帮助开发者快速发现并解决异常,同时掌握产品运营动态,及时跟进用户反馈。

存储相关

  • SwiftyUserDefaults
    对UserDefaults做了进一步的封装,使用起来比较方便。

  • MagicalRecord
    CoreData 数据存储管理工具,可以方便的增删改查,玩转CoreData必备的工具

相机相册图片处理

其他

  • OCR(OC)
    身份证扫描,识别速度特别快,可以快速识别出身份证正反面所有的信息,但是使用了这个框架后就不能用模拟器进行运行程序了,会报错,具体解决办法我也没找到,如果你解决了请留言给我,谢谢。
  • card.io-iOS-SDK
    银行卡识别框架,具体使用参考
  • PPGetAddressBookSwift
    通讯录的处理,可以自己设置通讯录排列样式
  • EZSwiftExtensions
    swift中的各种Extensions,总有方便你使用的
  • KMCGeigerCounter(OC)
    监测app的卡顿情况,具体介绍参考
    注:使用时注意文章最后的PS,加在AppDelegate中会报错的,要加载viewController中
  • MLeaksFinder(OC)
    监测app有无内存泄漏情况,直接导入就可以,不用添加任何代码,在有内存泄露的界面就会弹出窗口提醒。

外链

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,200评论 4 61
  • Someday I will find you somewhere. Meet you on the dres...
    Me_Taylor阅读 84评论 0 0