【问题标题】:No such module 'BMSPush' after SDK installation with cocoapods使用 cocoapods 安装 SDK 后没有这样的模块“BMSPush”
【发布时间】:2016-04-06 10:45:14
【问题描述】:

我已经按照在线文档初始化了适用于 iOS 的 Bluemix Push SDK:https://console.ng.bluemix.net/docs/services/mobilepush/t_enable_ios_notifications_install.html

不幸的是,我的 AppDelegate.swift 中的“import BMSPush”语句引发了错误(没有这样的模块 'BMSPush')。

在构建我的应用程序(目标:iOS 8.0)时,BMSPushClient.swift 上出现了 13 个问题,如下面的截图所示:

我的配置如下:

XCode 7.0.1
Mac OS X 10.10.5
Cocoapods 0.39.0

Cocoapods 报告了安装依赖项的以下版本:

Using BMSAnalyticsAPI (0.0.20)
Using BMSAnalyticsSpec (0.0.16)
Using BMSCore (0.0.44)
Using BMSPush (0.1.06)

有人知道如何解决这个问题吗?

【问题讨论】:

  • 我能够在我的环境中重新创建此问题,但更新到最新的 pod。我正在与开发团队交谈,当我有更多信息时会通知您

标签: ios push-notification ibm-cloud ibm-mobile-services


【解决方案1】:

我通过更新 SDK 源代码 (!) 解决了这个问题,在每个不明确的类型前加上 BMSAnalyticsSpec.,例如替换:

internal func sendAnalyticsData (logType:LogLevel, logStringData:String){

与:

internal func sendAnalyticsData (logType:BMSAnalyticsSpec.LogLevel, logStringData:String){

【讨论】:

    【解决方案2】:

    此问题的真正原因是 BMS Swift SDK 中的名称更改。您可能知道,用于 Bluemix 移动服务的 Swift SDK 仍处于预发布阶段。在正式发布之前,不断发生变化以改进 SDK。

    在这种情况下,项目 BMSAnalyticsSpec 已更改为 BMSAnalyticsAPI,这导致 BMSPushUtils 和 BMSPushCore 文件中的导入语句出现问题。开发团队已更新 SDK 以包含新的 BMSAnalyticsAPI 导入语句。我可以让你知道它什么时候可用。

    要在本地环境中解决此问题,您可以使用新的 BMSAnalyticsAPI 导入语句更新这两个文件中的导入语句。同样,在正式发布之前,SDK 仍应作为实验性 SDK 使用。

    更新: BMSPush SDK 已更新为包含上述名称更改。请完成 pod 更新以获取最新版本 (0.1.07)。这应该可以解决您上面描述的问题。

    【讨论】:

      猜你喜欢
      • 2015-12-04
      • 1970-01-01
      • 1970-01-01
      • 2015-09-12
      • 1970-01-01
      • 2023-02-16
      • 1970-01-01
      • 2016-06-07
      • 1970-01-01
      相关资源
      最近更新 更多