“智慧气象”是我最近在公司接手的项目,已经完成最新版本的更新并上架,在此分享下其中用到的第三方框架的使用。

应用地址:APP商店搜索“智慧气象”

  1. MJRefresh(下拉刷新)
    业界知名下拉刷新框架就不多说了。
  2. ShareSDK 2.12.0(第三方分享)
    业界常用的第三方分享框架,不过在适配iOS9上略微有点细节问题。可以参考官方的文档解决。
  3. GetuiSDK 1.2.1(消息推送)
    个推的集成是比较简单的,在我之前的博客中有提及。个推的开发文档和DEMO已经写的非常详细了。
  4. RNSwipe(界面滑动)
    这个是界面滑动的框架,算是比较普通的。类似的页面滑动小框架也非常多,甚至可以基于UIPageViewController自己写一个也是非常简单的。
  5. ArcGis 10.2.4(地图绘制)
    ArcGis是本项目中比较核心的框架。在本项目的业务中比如天气图、雷达图、台风等诸多业务都使用到这个框架。基于该框架封装的与Map相关类、数据模型和服务类都做的比较成熟了,但由于保密原因我不能将代码内容开放。但该框架对于高德、百度等Map的框架优势在于其对图层绘制功能的强大,比如多种数据源的瓦片形式的加载、格点等各种形式的图层等。
  6. CorePlot (折线图绘制)
    CorePlot是常用的数据可视化框架,主要是画折线图等。其中文相关资料的文档网上比较少,不过好在其需要实现的功能也不会太复杂。
  7. AFNetWorking 2.0 (网络通讯)
    基本每个应用都集成的网络框架,不说了。
  8. GDataXML-HTML (XML解析)
    这个是谷歌开源的XML解析的框架。主要为XML形式的内容到NSDictionary或NSArray数据类型的转换。
  9. JSONKit (JSON解析)
    常用JSON解析和JSON编码框架。现在自带的也挺好用。
  10. MBProgressHUD (进度条动画)
    比较强大的进度条动画的框架。支持多种透明层的定义,效果非常好。
  11. SFHFKeychainUtils (本地持久存储)
    Keychain是iOS中能实现应用删除后还存储数据的持久化存储方法。该框架封装了keychain的接口。关于持久化存储之后我会再写博客进行总结。
  12. SSZipArcihve (ZIP解压)
    SSZipArchive是一个用以Zip文件解压的框架。之所以要在项目中进行ZIP传输而不是JSON传输,是因为气象信息的格点、图层的信息量都比较大,比较耗流量。另外SSZipArchive和JSONKit,并不支持ARC,所以需要在编译处添加特殊字段。

另外,这些三方框架大部分都是采用CocoaPods进行管理,部分使用中会遇到的常见问题比如:

1.并不支持ARC的框架,如 SSZipArchive和JSONKit,解决方式是:

在Build Phases里的Compile Sources里Compiler Flags一栏添加 -fno-objc-arc。

2.含有C文件的框架,在编译时常常无法通过,需要注意:

如果有PCH文件,请在PCH文件全局import文件的前后加上#ifdef __OBJC__和#endif。这句话的意义是只对OC文件编译是import下列库,对C文件编译时不编译。

3.libz.dylib和libc++.dylib在iOS9中已更名为.tbd后缀。更换新后缀的即可。

iOS “智慧气象”APP中用到的第三方框架汇总的更多相关文章

  1. Android开发中用到的第三方框架汇总

    最近上网搜索了一些框架资料,整理了以下常用框架,希望在项目中有所帮助. 1.网络请求框架 android-async-http 该网络框架的介绍文章地址:http://www.cnblogs.com/ ...

  2. iOS边练边学--cocoaPods管理第三方框架--命令行方式实现

    更换源 Gem是一个管理Ruby库和程序的标准包,它通过Ruby Gem(如 http://rubygems.org/)源来查找.安装.升级和写在软件包 gem sources --remove ht ...

  3. iOS知名第三方框架和流行APP们所用的第三方框架小结

    网易新闻AppleReachabilityASIHTTPRequestEGOTableViewPullRefreshGTMNSString+HTMLMGTemplateEngineMPOAuthReg ...

  4. Android开发使用的常见第三方框架汇总

    本文转载:http://blog.csdn.net/liuhaomatou/article/details/44857005 1.volley 项目地址 https://github.com/sman ...

  5. 开发中用到的开源框架汇总(Updating)

    SuperWebSocket SuperSocket NPOI 官网:http://npoi.codeplex.com/ 实例讲解:http://www.cnblogs.com/yutian/p/52 ...

  6. iOS-常用的第三方框架的介绍

    写iOS 程序的时候往往需要很多第三方框架的支持,可以大大减少工作量,讲重点放在软件本身的逻辑实现上. GitHub 里面有大量优秀的第三方框架,而且 License 对商业很友好.一下摘录一下几乎每 ...

  7. GitHub 里面有大量优秀的第三方框架

    写iOS 程序的时候往往需要很多第三方框架的支持,可以大大减少工作量,讲重点放在软件本身的逻辑实现上. GitHub 里面有大量优秀的第三方框架,而且 License 对商业很友好.一下摘录一下几乎每 ...

  8. iOS逆向工程之Hopper+LLDB调试第三方App

    LLDB是Low Level Debugger的简称,在iOS开发的调试中LLDB是经常使用的,LLDB是Xcode内置的动态调试工具.使用LLDB可以动态的调试你的应用程序,如果你不做其他的额外处理 ...

  9. 最全面的iOS和Mac开源项目和第三方库汇总

    标签: UI 下拉刷新 EGOTableViewPullRefresh – 最早的下拉刷新控件. SVPullToRefresh – 下拉刷新控件. MJRefresh – 仅需一行代码就可以为UIT ...

随机推荐

  1. weblogic 10.x 上开发restful服务

    之前已经学习过 利用JAX-RS快速开发RESTful 服务,当时是jboss环境,如果原封不动的迁移到weblogic 10.x 版本,会杯具的发现应用启动失败,需要做些小调整: 项目结构如下: 需 ...

  2. 怎样修改 Openstack Horizon(Dashboard)的显示界面 (二)

    上一篇文章介绍了 Dashboard 的基本结构框架,那接下来的问题就是如何在这个框架中加入我们自己想要的内容了.在真正动手之前,让我们先来看看官方的页面是怎么做出来的.首先我们进入 /usr/sha ...

  3. ASP.NET 系列:单元测试之SmtpClient

    使用SmtpClient发送Email时,我们可以创建ISmtpClient接口和SmtpClientWrapper适配类,在单元测试中对ISmtpClient进行Mock或自定义FackeSmtpC ...

  4. Orchard创建全局应用

    Orchard的本地化管理托管于一个外部服务(Crowdin),这个项目是公开的且欢迎大家做贡献. Orchard支持两种类型的本地: Orchard应用程序以及已安装模块中的文本字符串的本地化(其实 ...

  5. ArcGIS支持MongoDB数据源

    ArcGIS支持MongoDB数据源 自从NoSQL推出之后,MongoDB就作为比较杰出的代表受到广大用户的推崇,当然,与之而来的大数据的讨论也非常激烈,GIS数据源向来都是以海量来计算,所以,GI ...

  6. 【转】XSD (xml Schema Definition)

    来自:http://www.cnblogs.com/newsouls/archive/2011/10/28/2227765.html Xml Schema的用途 1.  定义一个Xml文档中都有什么元 ...

  7. VMware精简系统Win系列|体积更小更稳定

    此Win系列基于VMware10 给个我自用的超精简VM10.0.3 XP重新制作体积大了一点但更稳定,压缩包166M 制作了Win 2003,压缩包171.4M Win7重新制作体积更小更稳定,压缩 ...

  8. html5 css3中的一些笔记

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" > <title> ...

  9. 一个Activity掌握Design新控件 (转)

    原文地址:http://blog.csdn.net/lavor_zl/article/details/51295364 谷歌在推出Android5.0的同时推出了全新的设计Material Desig ...

  10. 关于mysql数据库行级锁的使用(一)

    项目上一个业务需要对某条数据库记录加锁,使用的是mysql数据库 因此做了一个关于mysql数据库行级锁的例子做测试 package com.robert.RedisTest; import java ...