【问题标题】:Google Cast 2.6.0 errors when building iOS project构建 iOS 项目时出现 Google Cast 2.6.0 错误
【发布时间】:2015-06-08 09:42:51
【问题描述】:

在更新到新的 Google Cast 2.6.0 框架后,你们中的任何人在构建 iOS 项目时遇到错误?

我收到以下错误: const 类型“const NSInteger”(又名“const int”)对象的默认初始化。 在 GCKDevice 类中的以下几行:

/** Device capability flag for video out. */
GCK_EXPORT const NSInteger kGCKDeviceCapabilityVideoOut;
/** Device capability flag for video in. */
GCK_EXPORT const NSInteger kGCKDeviceCapabilityVideoIn;
/** Device capability flag for audio out. */
GCK_EXPORT const NSInteger kGCKDeviceCapabilityAudioOut;
/** Device capability flag for audio in. */
GCK_EXPORT const NSInteger kGCKDeviceCapabilityAudioIn;

【问题讨论】:

  • 您是否注意到任何其他错误?我假设您在更新之前没有看到这个,对吗?
  • 这里有同样的问题。无法构建新的 2.6.0
  • @not_a_bot 该错误是在集成 Google Cast 2.6.0 后才出现的,之前没有问题。
  • 快速提问:1) 你是如何整合的?是通过 cocoapods 还是直接链接框架? 2)您使用的是什么版本的Xcode,您使用的是哪个基础SDK?
  • 另外:您是否在任何 Objective-C++ 代码中使用它?想知道这是否会导致不同的构建要求。

标签: ios casting google-cast


【解决方案1】:

在此版本的 SDK 中,针对在 Objective-C++ 下编译的文件存在一个错误。如果从 .mm 文件中导入类,则缺少 extern 会引发问题。作为一种解决方法,如果您可以将代码移动到常规的 .m 文件中,则应该没问题(只要您不将 GCK 标头暴露给 mm,您就应该能够调用它)。

【讨论】:

  • 对于 SDK 的未来版本,您认为会解决这个问题吗?
  • 是的,当然。正在进行修复,应该在下一次 SDK 更新中。
【解决方案2】:

对我来说,将“No Common Blocks”编译器设置切换为 NO:

这似乎很有意义,这个设置定义了编译器如何处理重复的变量定义。这里解释一下:What is GCC_NO_COMMON_BLOCKS used for?

【讨论】:

  • 看来我已经将此标志设置为 NO,错误仍然存​​在 :(
猜你喜欢
  • 2019-08-18
  • 2019-08-02
  • 1970-01-01
  • 2019-02-03
  • 2011-11-02
  • 1970-01-01
  • 2019-01-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多