作者:wen260693700 | 来源:互联网 | 2023-08-29 13:37
该app为现版本SDK8.4Xcode一、新建项目运行Xcode选择CreateanewXcodeproject->SingleViewApplication命名We
该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