2014-01-21 41 views
2

我想在我的rubymotion項目中包含一些本機項目。之前任何人都面臨這個問題,因爲供應商還沒有提供cocoapod。如何在rubymotion中包含本機庫

感謝

+0

http://paulsturgess.co.uk/blog/2013/05/15/using-native-objective-c -cocoapod-libraries-in-rubymotion/ – ahmet

+0

ya其實我之前檢查過這個......但是如何顯示結構?沒有提供的本地庫不是cocoapod。我認爲在cocoapod中使用會導致錯誤。 – Nich

回答

3

您只需將所需的文件到供應商的文件夾複製,並要求他們在你的Rakefile。

例如。有了這兩個庫https://github.com/samvermette/SVPullToRefreshhttps://github.com/rs/SDWebImage,Rakefile中的以下內容就可以工作。

app.vendor_project("vendor/SDWebImage.framework", :static, products: ["SDWebImage"], headers_dir: "Headers") 

app.vendor_project("vendor/SVPullToRefresh", :static, cflags: "-fobjc-arc") 

第一個庫是.framework包,而第二個庫只是.h和.m文件在一個文件夾中。

您在這裏可以找到需要的第三方庫的一些詳細信息:

http://www.rubymotion.com/developer-center/guides/project-management/#_vendoring_3rd_party_libraries

+0

嗯,@willrax可以解釋代碼語句如何指向哪個文件夾?在SDWebImage github中,沒有SDWebImage.framework文件夾,headers_dir實際上指向什麼?我檢查了我的項目,它沒有.a文件,這有什麼關係嗎? – Nich

+0

我試過了,它沒有錯誤,但它確實給出了一些錯誤,似乎下次會給我帶來麻煩..警告:(i386)/ Users/focus/Library/Developer/Xcode/DerivedData/Build/Intermediates/MOLPayLibrary。 build/Debug-iphonesimulator/MOLPayLibrary.build/Objects-normal/i386/SuccessAuth.o無法打開目標文件 警告:(i386)/Users/focus/Library/Developer/Xcode/DerivedData/Build/Intermediates/MOLPayLibrary.build /Debug-iphonesimulator/MOLPayLibrary.build/Objects-normal/i386/Webdelgate.o無法打開目標文件 如何正確導入沒有錯誤? – Nich

+0

當您從GitHub下載發行版zip時,SDWebImage的框架文件會出現。如果你的庫沒有這個,你需要使用第二個選項並手動將.m和.h文件複製到供應商文件夾中。 – willrax