2014-01-15 52 views
0

我正在編寫一個Flex應用程序,需要使用ios本機擴展才能使用Dropbox核心sdk。我已經下載了框架,並將其添加到我的項目中。該項目的構建成功,我可以建立一個.ane文件,然後我可以將其添加到我的Flex應用程序中。但是在試圖運行Flex項目,flashbuilder不運行,抱怨說:ld:未找到框架:DropboxSDK

"Error occurred during packing the application: 
ld: framework not found DropboxSDK 
compilation failed while executing : ld64 

我發現有很多類似標題的帖子了,但是沒有他們的解決方案的工作。 我所做的事情/保證:

  1. DropboxSDK.framework是在我的項目文件夾的根。
  2. DropboxSDK.framework已被拖入xcode的框架文件夾中,其中「將項目複製到目標文件夾」,「爲任何添加的文件夾創建組」和「添加到目標」中的所有選中/勾選。
  3. 在構建階段,鏈接二進制與圖書館我有QuartzCore.frameworkFoundation.frameworkUIKit.frameworkDropboxSDK.frameworkSecurity.framework
  4. 在構建設置框架搜索路徑設置爲我的項目的根(其中DropboxSDK.framework放置)。
  5. 我在我的extension.h和任何引用Dropbox函數的文件中都有#import <DropboxSDK/DropboxSDK.h>
  6. 在構建我的xcode項目之後,我將我的libExtension.a放置在我的flex ios/build文件夾以及platformoptions.xml和library.swf中。
  7. 我iosplatformoptions.xml看起來是這樣的:

    <platform xmlns="http://ns.adobe.com/air/extension/3.7"> 
    <description>ExtensionName</description> 
    <copyright>2013</copyright> 
    <sdkVersion>5.0.0</sdkVersion> 
        <linkerOptions> 
        <option>-ios_version_min 5.0</option> 
        <option>-framework AddressBook</option> <!-- Used elsewhere in ane --> 
        <option>-framework DropboxSDK</option> 
        <option>-liconv</option> 
        </linkerOptions> 
    </platform> 
    
  8. 我試圖建立在Windows和Mac的ANE。

我確定必須有一個選項或步驟,我錯過了,但經過幾個小時的搜索我找不到它。我使用的是xcode 5.0.2,flashbuilder 4.10 air 3.9。任何幫助感謝!

回答

1

回答我自己的問題,以幫助其他人可能遇到這個問題。

經過大量的研究,我發現我需要將adobe flashbuilder鏈接到ios sdk。

右鍵單擊flashbuilder中的項目 - >屬性 - > Flex Build Packaging - > Apple iOS - >本機擴展選項卡。 Apple iOS SDK的位置有一個文本字段。我發現我的SDK在:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk 
+0

我有同樣的問題,但如果像storeKit,原生框架,說實話,我認爲它應該做的事,而通過-platformsdk參數大樓ANE(不爲我工作) – Injectios

+0

omg現在可以工作了......花了很多時間在-platformsdk參數上... f .. – Injectios