iOS应用程序和YouTube客户端

在此之前,我search了关于将youtube集成到一个ios应用程序的信息。 现在我需要再次这样做,所以我开始寻找谷歌的信息。 过了很短的时间已经困惑了。 我可以使用这个iOS的YouTube的示例

还是让我使用YouTube数据API(v3) ? 这个 ?

简短的回答:

  1. API是指消费Googlefunction的HTTP接口。
  2. 可以通过直接发出HTTP请求来使用这些API,根据API的规范或者使用其中一个客户端库。 客户端库是HTTP的一个层,它发出HTTP请求并parsing响应。 它们提供了一个更简单的接口来调用API(例如,使用给定的编程语言中的标准函数调用,而不是构buildHTTP请求),并且还简化了许多复杂的部分,如身份validation,刷新令牌等。

很长的回答:

应用程序编程接口或API是某种function的提供者与某些function的使用者之间的“契约”,它允许该function的提供者和使用者在不知道另一方的基础实现的情况下进行互操作。 这个“合同”包括诸如input的数量和types,input的名称(如果需要调用function),对input的任何约束,期望的输出,对输出的任何约束,失败模式等等

Google提供了许多基于HTTP的API来访问其服务的function。 它的服务实现这些API,通过发出HTTP请求和读取HTTP响应来使用这些API。 HTTP是一个方便的协议来实现,因为每个设备和语言都可以说HTTP; 但是,作为开发人员使用并不总是最方便的。 在许多情况下,你想要的input和输出是对象,而不是HTTP请求和HTTP响应。 而且,在许多情况下,使用您select的语言和input的types检查匹配function签名比记住HTTP请求path或手动将对象序列化或反序列化为请求中发送的HTTP请求或内容更方便。 这就是客户端库所在的地方。尽pipeHTTP API是在Google的服务器上实现的,但客户端库是开发人员在其应用程序中包含的库,并分发给运行这些应用程序的设备。 客户端库发出HTTP请求并解释响应,并为各种不同的编程语言提供更方便的编程语言专用包装器。

您提供的数据API链接logging了基于HTTP的API。 而示例应用程序正在使用客户端库(在底层调用基于HTTP的API)。 您提供的最后一个链接, iOS的云端点与您正在尝试执行的操作无关; 它logging了一种叫做Cloud Endpoints的机制,它是App Engine的一个function,它允许开发人员使用Google的基础架构创build自己的HTTP API,并自动生成包装这些HTTP API的客户端库(就像Google自动生成客户端库它自己的HTTP API)。

以下是一个示例应用程序,您可以开始在iOS上构buildYouTube API。

还有一个助手库可以在iOS中播放YTvideo。