首先,我正在使用XCode 4.0.2。
好的,这是我的问题。我可以为MFMailComposerViewController构建Apple示例程序并在模拟器中运行它(我知道它不会发送电子邮件,我只关心它构建)。这似乎工作正常。
但是,当我尝试构建我的应用程序时,我收到以下消息。
ld: warning: ignoring file /Users/lloyd/Projects/iOS/simpleApp/MessageUI.framework/MessageUI,
missing required architecture i386 in file
Undefined symbols for architecture i386: "_OBJC_CLASS_$_MFMailComposeViewController", referenced from:
objc-class-ref in MailData.o
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status
解
查看“构建设置”(基本和组合)我看到我设置了“框架搜索路径”。这很奇怪,因为我从来没有想过要设置它。删除它修复了问题。
我现在能够为模拟器和目标构建。注意:您不能从模拟器发送电子邮件,但您仍然可以运行代码(如果有意义的话)。
答案 0 :(得分:85)
在Xcode中,转到目标的构建阶段选项卡。确保你看到MessageUI.framework。如果不存在,请单击+添加新框架。
答案 1 :(得分:4)
<强>解强>
查看“构建设置”(基本和组合)我看到我设置了“框架搜索路径”。这很奇怪,因为我从来没有想过要设置它。删除它修复了问题。
我现在能够为模拟器和目标构建。注意:您不能从模拟器发送电子邮件,但您仍然可以运行代码(如果有意义的话)。
这是我问题的解决方案:)
答案 2 :(得分:2)
添加MessageUI.framework虽然文档说它不是必须的。
答案 3 :(得分:1)
将MessageUI.framework添加到项目Linked Frameworks and Libraries