用cocoapods安装SDK之后,没有这样的模块“BMSPush”

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

不幸的是,我的AppDelegate.swift中的“导入BMSPush”语句会产生一个错误(没有这样的模块“BMSPush”)。

在构build我的应用程序(目标:iOS 8.0)时,在BMSPushClient.swift上引发了13个问题,如以下屏幕截图所示:

构建错误

我的configuration如下:

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) 

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

这个问题的真正原因是由于BMS Swift SDK中的名称更改。 如您所知,用于Bluemix Mobile Services的Swift SDK仍处于预发布阶段。 正式发布之前,不断发生的改变SDK的改进。

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

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

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

我通过更新SDK源代码(!)解决了这个问题,在BMSAnalyticsSpec.每个不明确的typesBMSAnalyticsSpec. ,例如replace:

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

有:

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