2012-08-07 39 views
0

我目前正在通過使用corelocation.framework的Xcode構建iOS應用程序,但不幸的是我遇到了一些麻煩。我下載了Apple的LocateMe示例應用程序,當我通過模擬器運行它時,它工作正常(沒有錯誤或警告)。如何阻止Xcode忽略iOS應用的CoreLocation.framework?

然後,我構建了一個空的單頁應用程序,並向其添加了corelocation.framework文件。當我編譯並運行它,我得到一個警告:

(null): Ignoring file/Users/Andrew/Documents/GoogleDrive/Developer/ 
Xcode/Apps/GetLocation/CoreLocation.framework/CoreLocation, file 
was built for unsupported file format (0xce 0xfa 0xed 0xfe 0x c 0x 
0 0x 0 0x 0 0x 9 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0) which is not 
the architecture being linked (i386):/Users/Andrew/Documents/ 
GoogleDrive/Developer/Xcode/Apps/GetLocation/CoreLocation.framework 
/CoreLocation 

我試圖找到與搜索的框架,並添加它,也從蘋果的應用程序拖動框架礦。兩者都會產生相同的警告。

對於上述錯誤,除了文件目錄看起來不錯(我的應用程序存儲在這裏)之外,我無法多說這些,而我相信它代表了我的MacBook Air的集成圖形芯片組。

我也嘗試將蘋果應用程序撇到基本級別,但它很艱難 - 他們決定製作一個相當複雜的應用程序來表示該技術。

不幸的是,我對這一切需要改進的知識,我確實覺得我正在用這個任務跳起槍,但我有一個賭注 - 這需要在15日之前完成!

所以,如果任何人都可以提供一些關於爲什麼會產生這個警告的指導,以及我如何解決它,那將是非常感謝。

UPDATE

我在蘋果的應用程序LocateMe仔細一看,我注意到,構建是爲iOS 3.2。當我將其更改爲iOS 5.1時,除了出現單個錯誤外,沒有問題 - locationServicesEnabled已棄用。

+1

你說你添加了corelocation.framework文件。你是怎麼做到的?你確定你添加了正確的嗎?您應該在XCode中執行此操作,而不是使用取景器。 – sosborn 2012-08-07 01:34:50

+0

看看Jessedc的回答以及我們的對話。謝謝回覆。 – andrewb 2012-08-07 10:32:14

回答

5

看看你的錯誤報告,看起來你已經設法將CoreLocation.framework複製到你的項目目錄中。

file/Users/Andrew/Documents/GoogleDrive/Developer/Xcode/Apps/GetLocation/CoreLocation.framework/CoreLocation 

我不知道你是怎麼已經成功地在這裏得到它,但你需要做的第一件事就是刪除該位置.framework文件,然後取出現在紅色參考到Xcode項目中的CoreLocation.framework。

然後執行以下操作:

  • 點擊在導航您的Xcode項目,彈出項目設置。
  • 點擊你的目標
  • 點擊「構建階段」
  • 擴大「鏈接二進制與圖書館」部分
  • 點擊「+」並開始鍵入「CoreLocation」
  • 選擇出現的一個

一個側面說明:

當您選擇CoreLocation.framework我在上面的第五個項目符號中,確保您選擇了CoreLocation。框架在iOS 5.1文件夾引用下。

+0

感謝您的回覆 - 它的工作原理並沒有產生錯誤。雖然有一條評論,當我只刪除了引用,然後按照你所描述的方式添加了框架,它就產生了同樣的錯誤。當我刪除框架並將文件發送到垃圾箱時,它不會生成錯誤。雖然我證實手動添加文件會生成我找到的錯誤,但正如您所描述的那樣鏈接框架會正確導入它。那謝謝啦! – andrewb 2012-08-07 04:04:21

+0

好的,但我的建議是不把框架發送到垃圾箱,所以我要回復我原來所說的答案。如果你必須這樣做,那麼你的評論顯示我的回答幾乎是正確的。 – Jessedc 2012-08-07 04:55:16

+0

我只是再試一次。當我只刪除引用並重新添加它時,警告仍然存在。在框架被保存爲應用程序文件夾中的副本之前,當我將其移至解決錯誤的垃圾箱時。現在,當我鏈接二進制文件時,它仍然有錯誤,我無法將框架移動到垃圾箱。那麼爲什麼當我刪除引用時,顯然還有一些引用仍然存在? – andrewb 2012-08-07 05:20:58