NewsAPISwift 2.0

NewsAPISwift 2.0

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布上次发布2018年6月
SPM支持 SPM

Lucas Lima 维护。



  • 作者
  • Lucas Lima

NewsAPISwift

CI Status Carthage compatible Version License Platform codecov codebeat badge

NewsAPISwift 是 News API V2 的一个 Swift 客户端,这是一个提供最新新闻头条并从 30,000 多个新闻来源和博客中进行文章搜索的服务。

用法

NewsAPISwift 提供两种功能,用于请求资源和热门头条。

来源

第一个函数用于列出由服务索引的所有可用来源。可以通过传递三个参数来过滤结果。

参数 描述
分类 您想获取来源的分类。可能的值为:businessentertainmentgeneralhealthsciencesportstechnology。默认:所有分类。
语言 您想获取来源的语言。可能的值为:ardeenesfrheitnlnoptruseudzh。默认:所有语言。
国家 您想要获取资源的国家。要获取支持的完整国家列表,请访问官方文档默认:所有国家。

示例

import NewsAPISwift

let newsAPI = NewsAPI(apiKey: "YourKeyHere")

newsAPI.getSources(category: .technology, language: .en, country: .us) { result in
    switch result {
    case .success(let sources):
        // Do something with returned sources
    case .failure(let error):
        // Handle error
    }
}

头条新闻

第二个功能用于列出头条新闻。可以请求特定国家、单个或多个来源以及关键词的新闻头条。

要获取完整的参数列表,请查看官方文档

示例

关于天气的头条新闻

import NewsAPISwift

let newsAPI = NewsAPI(apiKey: "YourKeyHere")

newsAPI.getTopHeadlines(q: "weather") { result in
    switch result {
    case .success(let headlines):
        // Do something with returned headlines
    case .failure(let error):
        // Handle error
    }
}

来自BBC News的头条新闻

newsAPI.getTopHeadlines(sources: ["bbc-news"]) { result in
    switch result {
    case .success(let headlines):
        // Do something with returned headlines
    case .failure(let error):
        // Handle error
    }
}

关于美国技术的头条新闻

newsAPI.getTopHeadlines(category: .technology, country: .us) { result in
    switch result {
    case .success(let headlines):
        // Do something with returned headlines
    case .failure(let error):
        // Handle error
    }
}

也可以通过传递 pageSize 参数来限制返回文章的数量。由于可能有更多结果,还可以进行分页。

newsAPI.getTopHeadlines(pageSize: 20, page: 1) { result in
    switch result {
    case .success(let headlines):
        // Do something with returned headlines
    case .failure(let error):
        // Handle error
    }
}

示例应用

要运行示例项目,首先克隆仓库,然后从示例目录运行 pod install。然后,打开 Example.xcworkspace 并运行该项目。

安装

CocoaPods

CocoaPods 是 Cocoa 项目的依赖管理器。您可以使用以下命令安装它

$ gem install cocoapods

要使用 CocoaPods 将 NewsAPISwift 集成到您的 Xcode 项目中,请在与您的 Podfile 中指定它

platform :ios, '8.0'
use_frameworks!

target '<Your Target Name>' do
    pod 'NewsAPISwift'
end

然后,运行以下命令

$ pod install

Carthage

Carthage 是一个去中心化的依赖管理器,它构建您的依赖并提供二进制框架。

您可以使用 Homebrew 使用以下命令安装 Carthage

$ brew update
$ brew install carthage

要使用 Carthage 将 NewsAPISwift 集成到您的 Xcode 项目中,请在您的 Cartfile 中指定它

github "lucaslimapoa/NewsAPISwift"

运行以下命令以构建框架

carthage update

然后,将构建完成的 NewsAPISwift.framework 拖动到您的 Xcode 项目中。

授权

NewsAPISwift 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。

注意:此库及其作者未获得 newsapi.org 的赞助或隶属。