OpenWeatherFreeClient — Xcode 10.1+
OpenWeatherMap Free API 客户端也用于macOS和iOS应用程序。
集成功能
简介
这个库允许开发者在 free OpenWeather API 的支持下执行网络调用以请求天气数据。其中包括了 API 的
当前天气数据
和5天/3小时预报
实现。
需要
单独的API密钥
。
需求
- macOS 10.13.6+
- Xcode 10.1+
- Swift 4.2+
- iOS: 9.3+, UIKit SDK
- macOS: 10.9+, AppKit SDK
第一方软件
第三方软件
- SwiftLint Shell Script Runner
- SwiftLint / 0.31.0: Busy Laundromat for macOS High Sierra
安装
强烈建议在版本字段中使用“精确”。
独立安装
将文件 OpenWeatherStar.swift
复制一份,然后将其放在主项目所需的位置。
Carthage
Cartfile 应当包含
github "perseusrealdeal/OpenWeatherFreeClient" == 0.1.1
一些 Carthage 使用技巧放置在此处:[链接](https://gist.github.com/perseusrealdeal/8951b10f4330325df6347aaaa79d3cf2)
CocoaPods
Podfile 应当包含
target "ProjectTarget" do
use_frameworks!
pod 'OpenWeatherFreeClient', '0.1.1'
end
Swift Package Manager
- 作为包依赖项,所以 Package.swift 应当包含以下语句
dependencies: [
.package(url: "https://github.com/perseusrealdeal/OpenWeatherFreeClient.git",
.exact("0.1.1"))
],
- 作为 Xcode 项目依赖项
在导航器 > 包依赖项 > 添加包依赖项中添加项目
强烈建议在版本字段中使用“精确”。
使用方法
调用当前天气
let apikey = "The API key"
let client = OpenWeatherFreeClient()
let callDetails = OpenWeatherDetails(appid: apikey)
client.onDataGiven = { result in
switch result {
case .success(let weatherData):
print("""
DATA: BEGIN
\(String(decoding: weatherData, as: UTF8.self))
DATA: END
""")
case .failure(let error):
switch error {
case .failedRequest(let message):
print(message)
default:
break
}
}
}
try? client.call(with: callDetails)
5日/3小时预报
let apikey = "The API key"
let client = OpenWeatherFreeClient()
let callDetails = OpenWeatherDetails(appid: apikey, format: .forecast)
client.onDataGiven = { result in
switch result {
case .success(let weatherData):
print("""
DATA: BEGIN
\(String(decoding: weatherData, as: UTF8.self))
DATA: END
""")
case .failure(let error):
switch error {
case .failedRequest(let message):
print(message)
default:
break
}
}
}
try? client.call(with: callDetails)
MIT许可证
本仓库中所有文件都基于MIT许可证授权。
版权所有 © 诺沃西伯斯克市米哈伊尔·日古林 7531。
- 根据斯拉夫日历,年份从世界创世纪开始。
- 斯拉夫年的9月1日
详情请见许可证。
作者
OpenWeatherFreeClient
由诺沃西伯斯克的米哈伊尔·日古林(我)编写。