GoogleCloudMessaging链接错误

时间:2015-10-30 07:03:36

标签: ios objective-c google-cloud-messaging

我需要在我的应用中使用 GoogleCloudMessaging 。我是通过 Cocoapods 安装的。 当我添加这部分代码时:

GLInstanceIDConfig *instanceIDConfig = [GGLInstanceIDConfig defaultConfig];
    instanceIDConfig.delegate = self;
    // Start the GGLInstanceID shared instance with the that config and request a registration
    // token to enable reception of notifications
    [[GGLInstanceID sharedInstance] startWithConfig:instanceIDConfig];
    _registrationOptions = @{kGGLInstanceIDRegisterAPNSOption:deviceToken,
                             kGGLInstanceIDAPNSServerTypeSandboxOption:@YES};
    [[GGLInstanceID sharedInstance] tokenWithAuthorizedEntity:GCMSSenderID
                                                        scope:kGGLInstanceIDScopeGCM
                                                      options:_registrationOptions
                                                      handler:_registrationHandler];

我有这些错误:

  

架构x86_64的未定义符号:
  " _OBJC_CLASS _ $ _ GGLInstanceID",引自:         AppDelegate.o中的objc-class-ref" _OBJC_CLASS _ $ _ GGLInstanceIDConfig",引自:         AppDelegate.o中的objc-class-ref" _kGGLInstanceIDAPNSServerTypeSandboxOption",引自:          - [AppDelegate应用程序:didRegisterForRemoteNotificationsWithDeviceToken:] in   AppDelegate.o" _kGGLInstanceIDRegisterAPNSOption",引自:          - [AppDelegate应用程序:didRegisterForRemoteNotificationsWithDeviceToken:] in   AppDelegate.o" _kGGLInstanceIDScopeGCM",引自:          - [AppDelegate应用程序:didRegisterForRemoteNotificationsWithDeviceToken:] in   AppDelegate.o ld:找不到架构x86_64 clang的符号:   错误:链接器命令失败,退出代码为1(使用-v查看   调用)

项目设置:

- >仅构建活动架构 - 是

- >其他Linked Flags包含$(继承)

- >部署目标 - 8.0

请帮帮我! 提前谢谢!

2 个答案:

答案 0 :(得分:1)

检查4件事:

  1. 您尚未在项目中手动上传 GoogleCloudMessaging 。如果有,请删除它们并重新安装pod。

  2. 检查构建设置中的链接器路径设置。使用' $ inherited '在安装pod之前。

  3. 重新安装pod后,使用 cmd + shift + k 清理项目,然后运行项目。

  4. 仅构建活动架构 - 否,以及针对目标-YES

答案 1 :(得分:0)

此错误是因为项目中缺少某些库。

签入Build Phases -> Link Binary With Libraries。您的任何框架都可能已被删除。

添加它并清理和构建项目。

可能会帮助你。