GoogleAPISwiftClient 0.5.0

GoogleAPISwiftClient 0.5.0

测试已测试
语言语言 SwiftSwift
许可证 Apache 2
发布时间最后发布2016年6月
支持SPM支持SPM

Matthew Wyskiel维护。



 
依赖项
Alamofire~> 3.3.0
ObjectMapper~> 1.2.0
 

Google APIs Swift 客户端

我们中的许多人可能至少使用过一个 Google 的公共数据 API,对于使用 Cocoa 和 Cocoa Touch 的我们来说,官方指导是使用开源的 Google APIs Objective-C 客户端 以获得实现帮助。

它在 2011 年是很好的,但那时还没有 Swift、现代 Objective-C、CocoaPods,甚至也没有自动引用计数!生活中的一些东西随着时间的推移会变得更好;那个库就不是其中之一。而 Google 也没有通过基本上忽视他们的客户端库来帮助这个问题。他们甚至不支持他们在新的 基于 CocoaPods 的库分发系统中!(不要被骗:“Google APIs for iOS” 仅仅是所有其他“现代”库的聚合包,显然也不包括上述数据 API 客户端)

这就是我决定尝试一些新东西的原因。一些真正利用当前技术的东西。一些真正让开发者喜欢使用的东西。

我没有找到我想要的东西,所以我决定自己构建它。

这个库还处于早期阶段。它包含基本模型类和协议以及 发现 API 博客 APIYouTube 数据 API 的实现。更多服务即将推出!如果您想帮助,请参见下面的贡献。即使 star 这个项目也会让我知道这个项目是值得投入工作的。

安装

  pod 'GoogleAPISwiftClient/{API}', '~> 0.5.0'

其中 API 是您想使用的 API 名称。您可以使用多个 API - 只需使用多个 pod 声明!API 名称列在 podspec 文件的 subspecs 下。

然后导入

  import GoogleAPIs

身份验证

Google API 使用两种方法中的两种进行身份验证:API 密钥或 OAuth 2.0。

API 密钥和 OAuth 访问令牌都是直接在协议符合 GoogleService 的对象中设置的,在调用任何需要通过这些身份验证方式之一进行身份验证的服务获取器之前(请参阅特定服务 API 的文档以了解特定方法应使用哪种身份验证方法)。

这意味着您可以采取一切必要的手段来获取OAuth令牌信息并保持其更新。您可以使用GTM-OAuth2、新的Google Sign-in SDK或任何其他OAuth 2库来完成任务。

基本用法

只需使用所选服务的基类(以自身的名称命名)来发起请求,然后将其返回给完成处理程序。

例如,如果我想获取特定Blogger文章的特定评论

  • 首先,我会初始化Blogger服务
    let bloggerService = Blogger()
  • 然后,我会设置API密钥
    bloggerService.fetcher.apiKey = "abcdefghijklmnop1234567890" // Example
  • 接下来,只需要调用此方法即可获取博客文章的特定评论
    bloggerService.getCommments(commentId: "abcdef", postId: "ghijkl", blogId: "1234567") {
      comment, error in
      // handle
    }

真的很简单!

贡献

  • 如果您想帮助改进基类和协议(GoogleObject、GoogleService等),那么请随意在该仓库上进行分叉并创建拉取请求。
  • 如果您想添加新服务,请参阅GoogleServiceGenerator。该仓库托管用于为Google服务生成代码的应用程序代码。

许可证

Apache License,版本2.0

有关详细信息,请参阅LICENSE文件。