八、天气App案例

该app为

现版本 SDK 8.4 Xcode

一、新建项目

运行Xcode 选择 Create a new Xcode project ->Single View Application 命名 WeatherDemo

单击下一步,选择一个目录去保存你的项目,然后点击Create。

现在,你的基础项目已经完成。下一步是集成你的第三方工具。但首先你要关闭Xcode,确保他不会影响下一步。

二、编写程序 请参考文章http://www.cocoachina.com/industry/20140224/7868.html

      改进程序 http://www.cnblogs.com/mobilefeng/p/4622035.html
  这两篇文章写的很详细,这里就不在做重复工作
 
三、参照文章写完之后发现程序无法获取天气,经分析后发现问题如下
  1、iOS 9 现在网络协议默认使用https但现程序使用的是http,解决方法:
    在Info.plist中添加NSAppTransportSecurity类型Dictionary
    在NSAppTransportSecurity下添加NSAllowsArbitraryLoads类型Boolean,值设为YES
           ps:该方法只是将支持协议退回至http并未改变请求方式
  2、成功发送请求后nslog打印出来json数据无法解析
          经设置断点后发现API接口返回数据为Invalid API key. Please see http://openweathermap.org/faq#error401 for more info.
          访问该网址发现从15年10月份开始向该API请求数据时需要增加一个API key
          在文中找到注册网址注册个账号后会获取到API key
          分别在

    -(RACSignal *)fetchCurrentConditionsForLocation:(CLLocationCoordinate2D)coordinate

    - (RACSignal *)fetchHourlyForecastForLocation:(CLLocationCoordinate2D)coordinate

    - (RACSignal *)fetchDailyForecastForLocation:(CLLocationCoordinate2D)coordinate

          三个方法的url网址http://api.openweathermap.org/...结尾处添加 &APPID={APIKEY}(填上注册后获取到的apikey)

         

      再次构建程序,运行,又可以获取天气了

    

原天气实例地址http://www.cocoachina.com/industry/20140224/7868.html 

CocoaPods安装和使用及问题地址 http://my.oschina.net/w11h22j33/blog/206129

posted @ 2015-11-04 21:31  锦夏ing  阅读(326)  评论(0编辑  收藏  举报