【问题标题】:How to run project with Gdata library如何使用 Gdata 库运行项目
【发布时间】:2011-10-27 07:22:26
【问题描述】:

我使用 gdata 框架,我想用 GDataYoutube 库创建 youtube 应用程序。我使用交叉引用项目 Gdata 制作项目,但现在我在 xcode 4 -> 产品 -> 存档中的选项有问题。当我构建我的应用程序时,我收到此错误:'服务占位符编译器标志应替换为实际服务规范'

#if !DEBUG
  #if GDATA_INCLUDE_nameServiceHere_SERVICE && !GDATA_SUPPRESS_INCLUDE_WARNING
    #error The service placeholder compiler flag should be replaced by actual service specifications
  #endif
#endif

感谢您的帮助!

【问题讨论】:

    标签: ios xcode4 youtube gdata


    【解决方案1】:

    另外,如果您需要在 GData 中使用几个(或所有)模块,您只需将 require 服务设置为 0

    -DGDATA_REQUIRE_SERVICE_INCLUDES=0
    

    每次将其设置为 1 时,它都会等待您要使用的规范模块(在您的情况下为 youtube),因此它看起来像:

    -DGDATA_REQUIRE_SERVICE_INCLUDES=1
    -DGDATA_INCLUDE_YOUTUBE_SERVICE=1
    

    这是您应该在哪里设置的屏幕截图:http://i.imgur.com/RN7Ot.png

    【讨论】:

      【解决方案2】:

      gdata 是一个单体库,objective-c 版本可以让你使用预处理器机制来链接你不感兴趣的服务。看起来它应该是一个方便的特性,但作者选择强制它.这可能是最好的:使用它从我的二进制文件中抽出 4MB。

      例如假设您只想在 iOS 上使用 YouTube API,您将打开 GData 项目,复制 libGDataTouchStaticLib.a 目标,然后添加

      -DGDATA_REQUIRE_SERVICE_INCLUDES=1
      -DGDATA_INCLUDE_YOUTUBE_SERVICE=1
      

      构建设置 > 其他 C 标志

      这解决了您的构建问题并且为您提供了一个更精简的应用程序。奖金!

      【讨论】:

      • 我评论这个错误,因为除了我自己的应用程序之外,我没有使用 Gdata 的服务。
      猜你喜欢
      • 2015-06-18
      • 1970-01-01
      • 2015-09-09
      • 2016-05-31
      • 2020-10-20
      • 2018-08-25
      • 1970-01-01
      • 2019-09-08
      • 2012-04-12
      相关资源
      最近更新 更多