【问题标题】:Integrating YouTube Data API v3 iOS集成 YouTube 数据 API v3 iOS
【发布时间】:2014-11-18 07:27:51
【问题描述】:

我正在尝试将适用于 iOS 的 YouTube 数据 API v3 集成到我的项目中。最后,我要做的就是将应用程序所有实例中的视频上传到公司拥有的 youtube 频道,并获取能够将视频嵌入网站的 URL。不过,我不知道如何为 iOS 集成客户端库。我遇到编译错误或无法解决的 ARC 问题。文件可在此处找到:https://code.google.com/p/google-api-objectivec-client/source/checkout

【问题讨论】:

    标签: ios objective-c youtube-data-api


    【解决方案1】:

    简而言之,这就是我所做的:

    在我的项目中,我添加了 GTLYouTube_Sources.m、GTLCommon_Sources.m 和 GTLNetworking_Sources.m。 确保 Build Phases -> Compile Sources 为这三个文件设置了编译器标志“-fno-objc-arc”。这应该可以解决您的 ARC 问题。 如果编译器抱怨找不到文件,您可能需要在构建设置中设置一些搜索路径。

    希望这会有所帮助!

    【讨论】:

      【解决方案2】:

      我遇到了问题,但结合 google 的页面 + youtube 教程,我能够让事情正常进行,我仍然不知道如何搜索,但这里是我关于这个主题的笔记:

      这个文件指向正确的方向 - https://code.google.com/p/google-api-objectivec-client/wiki/BuildingTheLibrary

      这个视频更好 - https://www.youtube.com/watch?v=q7m3qCsQBEE

      根据我对视频流的评论-“

      我完成了本教程并收到 9 个引用派生数据文件夹的链接器错误,并且“文件是为存档而构建的,它不是被链接的架构 (x86_64)”,但在项目的构建设置中选择了“标准架构” (armv7,arm64)。这是使用 Xcode 6,但如果需要,我可以尝试 Xcode 5.1.1(尽管我认为这个问题不会减弱,因为它也支持 64 位架构。进入 GTL 项目并选择 GTLTouchStaticLib 并更改架构to Standard 删除了链接器错误,构建成功!https://www.dropbox.com/s/f6tc6t33r5k5021/Screenshot%202014-10-10%2012.08.00.png?dl=0”

      由于已知问题,尽管有 API 密钥,API 调用仍可能出现 401 - https://code.google.com/p/gdata-issues/issues/detail?id=5770#makechanges 要修复的是从 Google 控制台中删除捆绑 ID。

      【讨论】:

      • 你可以为设备构建吗?...我能够在模拟器上运行,但得到设备@Stuart P的链接器错误。
      【解决方案3】:


      我正在为这个问题提供一个更新的答案。所以它可以对社区有所帮助。
      注意:- GTL 转换为 GTLR 。谷歌图书馆已更新。我建议使用 cocoapods,因为它会很简单。(据我说)这里是此迁移的 link

      1) 为您的项目创建 pod 文件。通过pod init & pod install 在您的终端中。它将创建空白 pod 安装。(如果您已经完成,请忽略)

      2) 在 pod 文件中添加这些 pod 库名称。
      这是一些有用的services

      pod 'GoogleAPIClientForREST'
      pod 'GoogleAPIClientForREST/YouTube' //here '.../YouTube' is the service. you can use ".../Caledar' ,".../Translate" or which you want.
      pod 'GTMAppAuth'
      

      3) 添加这些标题(我建议为您的项目创建前缀标题“.pch”。)

      #import <GTMAppAuth/GTMAppAuth.h>
      #import <AppAuth/AppAuth.h>
      #import "GTLRYouTube.h" //here you can change double quotation ("...") with (<...>) if this throws the error "library not found".
      

      4) 这一步是可选的..
      选择您的项目目标并转到build settings。并搜索OtherLinkerFlags并添加$(inherited)

      注意:- if you can use Firebase to use google's service it will be more easy.(i've tried it and it was simple than google developer console. this is my personal opinion.)

      【讨论】:

        猜你喜欢
        • 2014-09-11
        • 2019-11-09
        • 2013-06-01
        • 2021-12-25
        • 1970-01-01
        • 2015-04-28
        • 2016-06-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多