2014-07-17 25 views
1

我需要在基於Swift的應用程序中使用Ubertesters框架。 Ubertester框架也依賴於少數Cocoa框架。通常在ObjC環境中,你必須添加一些框架鏈接二進制文件,但不再在Swift中。然而,當我在Swift中使用Ubertester SDK時,Ubertester SDK所需的Cocoa框架依賴關係並未動態加載。第三方ObjC框架依賴於Swift應用程序中的動態Cocoa框架

這裏是我做了什麼:

  1. 我說Ubertester框架給工作區
  2. 我創建了umbrela頭,並有#進口的UbertesterSDK(我能看到細密的Ubertester類爲SWIFT代碼)。
  3. 我沒有添加Ubertester向鏈接二進制文件請求的可可依賴框架。

嘗試失敗的設備或模擬器上運行它:

ld: warning: relocatable dylibs (e.g. embedded frameworks) 

    are only supported on iOS 8.0 and later (@rpath/libswift_stdlib_core.dylib) 

    Undefined symbols for architecture i386: 

    "_AudioServicesPlaySystemSound", referenced from: 

     -[Ubertesters playSystemSound:] in UbertestersSDK 

    "_OBJC_CLASS_$_ASIdentifierManager", referenced from: 

     objc-class-ref in UbertestersSDK ... 

任何想法如何調試這個錯誤?

謝謝

回答

1

看起來你正在運行在模擬器上的東西比iOS 8的老年人和架構的該組合和OS不被你的庫支持。

嘗試將項目目標上的部署目標更改爲iOS 8並查看是否啓動。在此期間,我會檢查是否有最新版本的SDK。