6

解决方案:所以 Mopub 的说明没有提到这一点EventKit并且EventKitUI是必需的。除了 MoPub 提到的框架之外,添加这些可以构建项目。

更新: MoPub 的说明已更新。


我正在按照他们的说明将 MoPub 的完整 iOS SDK 集成到我的应用程序中。不幸的是,在添加了他们的代码和所需的框架后,我得到了以下构建错误:

Undefined symbols for architecture i386:

  "_OBJC_CLASS_$_EKAlarm", referenced from:
      objc-class-ref in MRCalendarManager.o
  "_OBJC_CLASS_$_EKEvent", referenced from:
      objc-class-ref in MRCalendarManager.o
  "_OBJC_CLASS_$_EKEventEditViewController", referenced from:
      objc-class-ref in MPInstanceProvider.o
  "_OBJC_CLASS_$_EKEventStore", referenced from:
      objc-class-ref in MPInstanceProvider.o
      objc-class-ref in MRProperty.o
  "_OBJC_CLASS_$_EKRecurrenceDayOfWeek", referenced from:
      objc-class-ref in MRCalendarManager.o
  "_OBJC_CLASS_$_EKRecurrenceEnd", referenced from:
      objc-class-ref in MRCalendarManager.o
  "_OBJC_CLASS_$_EKRecurrenceRule", referenced from:
      objc-class-ref in MRCalendarManager.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

这些错误是什么意思?我想了解它们,然后弄清楚如何自己解决它们。通常,当我添加第三方广告或分析 SDK 时,集成过程非常简单。因此,我没有太多解决这些类型错误的经验。

注意我尝试将 MoPub 完整 SDK 集成到我自己的应用程序和一个简单的测试应用程序中。两者都给出相同的错误。

4

2 回答 2

17

EventKit.framework添加到您的项目中。

于 2013-08-23T05:01:14.823 回答
1

当您将外部库集成到您的应用程序中时,通常会将其编译为与模拟器或设备一起使用。我相信你的 .a 文件是为在设备上工作而编译的,如果你为设备构建,你的链接器应该表现得更好。

或者,您可能根本忘记包含 .a 文件。

于 2013-08-23T04:57:35.093 回答