【问题标题】:UrbanAirship iOS SDK error in Xcode 7 when archiving: libUAirship-6.2.0.a (UAWalletAction.o)' does not contain bitcode归档时 Xcode 7 中的 UrbanAirship iOS SDK 错误:libUAirship-6.2.0.a (UAWalletAction.o)' 不包含位码
【发布时间】:2015-09-05 17:04:03
【问题描述】:

我在 Swift 中有一个带有 CocoaPods 的 iOS 应用程序,通过 Pods 使用 UrbanAirship iOS SDK,如下所示:

pod 'UrbanAirship-iOS-SDK'

我们可以验证Podfile.lock文件中安装的版本:

- UrbanAirship-iOS-SDK (6.2.0):
  - UrbanAirship-iOS-SDK/Core (= 6.2.0)
- UrbanAirship-iOS-SDK/Core (6.2.0)

应用程序在 Xcode 6.4 上正确构建、运行和归档。此外,它还在 Xcode 7 beta 6 上正常构建和运行。但是,在 Xcode 7 中归档时,出现以下错误

ld: '.../Pods/UrbanAirship-iOS-SDK/Airship/libUAirship-6.2.0.a(UAWalletAction.o)' 不包含位码。您必须在启用位码的情况下重建它(Xcode 设置 ENABLE_BITCODE),从供应商处获取更新的库,或禁用此目标的位码。对于架构 armv7

clang: error: 链接器命令失败,退出代码为 1(使用 -v 查看调用)

我已将项目构建设置更新为 disable 位码,方法是在项目和目标级别将 ENABLE_BITCODE 设置为 NO,如 this SO answer 所示,但错误仍然存​​在。

任何帮助将不胜感激。感谢您的宝贵时间。

【问题讨论】:

  • 你能在前台模式下处理推送通知吗?请建议我,如何在前台模式下处理通知。在我的 iOS 应用程序 (Swift) 中是必需的。

标签: ios xcode xcode7 urbanairship.com bitcode


【解决方案1】:

昨天我更新到最新的 XCode7(预发布),但无法归档我正在处理的项目 :( ...在自己努力构建 UA SDK 和其他库之后,我只是设置了 Enable BitcodeNO 并且一切都像在 XCode6 中一样工作!:)

更新:

除了项目和项目中的目标外,还应该在受影响的 CocoaPod 框架目标(UrbanAirship- iOS-SDK 在这种情况下)。

【讨论】:

  • 有趣,我尝试将 Enable Bitcode 设置为 NO,正如我在帖子中解释的那样,但它仍然对我不起作用,仍然得到同样的错误。
  • 呃,刚刚意识到我已经更新了应用程序中所有目标的 Bitcode 设置,但没有更新 cocoa pods 框架目标。我已更新您的答案以反映这一点。
  • 我在使用 Firebase 库时遇到了同样的问题,它有所帮助。谢谢!
【解决方案2】:

如果您的应用不是为 Watch OS 构建的,您可以安全地将 Enabled Bitcode 关闭为 NO。

我还建议使用 Xcode 6 提交构建,因为大多数库至少在 Xcode 7 正式发布之前不会添加对位码的支持。

支持位码的库无法在 Xcode 6 上运行,因此延迟采用。

【讨论】:

    【解决方案3】:

    要启用位码,您必须使用 Xcode 7 构建库。Xcode 7 GM 已于今天发布,因此我们现在可以发布启用位码的 UA SDK 更新。在更新之前,您可以通过关注https://github.com/urbanairship/ios-library 从源代码构建 SDK。

    更新: 我们发布了 2 个 6.2.2 版本,一个带有位码,一个没有。 https://bintray.com/urbanairship/iOS/urbanairship-sdk/6.2.2/view

    【讨论】:

    • 谢谢你,Ralepinski。任何关于何时使用 Bitcode 更新 SDK 的 ETA?
    • 我们现在正在努力,但是在构建旧 Xcode 时遇到了一些障碍。
    • 请问有人可以链接到 xcode7 构建的库吗?那,或者我应该将我的 configure-xcode-version.sh 更改为什么?我不确定要使用的语法。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-06
    相关资源
    最近更新 更多