2011-05-09 30 views
28

首先,我使用的是XCode 4.0.2。MFMailComposeViewController不會鏈接模擬器

好的,這是我的問題。我可以爲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 

SOLUTION

尋找 「生成設置」(基本和複合)我看到了,我不得不 「框架搜索路徑」 設置。這很奇怪,因爲我從不記得設置它。刪除它可以解決問題。

我現在可以爲模擬器和目標都構建。注意:您不能從模擬器發送電子郵件,但您仍然應該能夠運行代碼(如果有意義的話)。

+0

這是解決...嘿... – 2011-06-02 15:51:25

+17

您還可以得到這個錯誤,如果你不按添加MessageUI.framework:[鏈接]( http://stackoverflow.com/questions/3352664/how-to-add-existing-frameworks-in-xcode-4) – Cephi 2011-06-07 17:35:35

+0

是的。但情況並非如此,這是令人生厭的部分。 – 2011-06-22 15:20:30

回答

4

SOLUTION

尋找「生成設置」(基本和複合)我看到了,我不得不「框架搜索路徑」設置。這很奇怪,因爲我從不記得設置它。刪除它可以解決問題。

我現在可以爲模擬器和目標都構建。注意:您不能從模擬器發送電子郵件,但您仍然應該能夠運行代碼(如果有意義的話)。

這是解決我的問題:)

+0

THAAAAANKK YOUUUU,我生氣了,但我想我現在知道爲什麼發生了,我正在拖拽和從另一個項目的框架到這個... – AntonijoDev 2013-11-28 08:18:43

83

在Xcode中,轉到您的目標的構建階段選項卡。確保你看到MessageUI.framework。如果不在那裏點擊+添加一個新的框架。

+1

MessageUI.framework是構建的一部分 - 見上面我有「解決方案」。 – 2011-09-22 13:51:03

+0

謝謝!我忘了添加框架... – Heartinpiece 2012-02-07 06:02:29

+2

我意識到這是一個古老的問題,但對於從網絡搜索出現的其他人來說,問題可能是您有多個目標,並且您忘記將框架添加到所有目標。這發生在我身上。 – 2012-03-09 00:45:23

1

添加MessageUI.framework到項目鏈接的框架和庫

相關問題