Cordova 4.1.2,XCode 6.2
我试图使用来自第三方库的第三个SDK,我有源,其中包含自己的XCode项目。制造商的说明将库.xcodeproj拖到我的工作区。虽然这是有效的,但是当我开发我的Cordova plugin.xml时它会变得不实用,因为我经常销毁并重新创建我的项目的XCode文件。我已经构建了第三方SDK,它生成一个头文件目录,一个.a文件和一个.bundle文件。
在我的plugin.xml中,对于静态库,我有,
<source src="src/ios/libKALTURAPlayerSDK.a" framework="true" />
根据插件规范,这应该将.a文件复制到项目中并将其添加到带有二进制文件的链接部分。尽管如此,它似乎并没有做到。我在项目中为该行构建的错误
#import <KALTURAPlayerSDK/KPViewController.h>
是,
..../foo/platforms/ios/foo/Plugins/ca.foo.kaltura/MyFoo.h:2:9: 'KALTURAPlayerSDK/KPViewController.h' file not found
KALTURAPlayerSDK是.a库的产品名称。我已经尝试将其添加到标题,库和框架搜索路径中,但没有运气:
$(PROJECT_DIR)/foo/Plugins/ca.foo.kaltura
我的插件正在将所有库的标题复制到我项目中的插件文件夹中(我应该这样做吗?)。
请注意,作为测试,我尝试不复制我的插件中的任何框架内容,而是手动将第三方(kaltura)库拖入我的项目中,虽然这样做有效,但我仍然无法在使用cordova的命令行,找不到相同的文件&#39;如上所述的错误。它在XCode中构建,但不在命令行上构建。我希望能够更深入地了解这个问题。谢谢。
答案 0 :(得分:0)
尝试替换 import&lt; - KALTURAPlayerSDK / KPViewController.h&gt; 同 import&#34; KPViewController.h&#34;
您还需要在plugin.xml中指定标题
&lt; - source src =&#34; src / ios / libKALTURAPlayerSDK.a&#34;框架=&#34;真&#34; /&GT;
&lt; - header-file src =&#34; src / ios / KPViewController.h&#34; /&GT;