我目前正在为 phonegap 3 制作插件。我有一个自定义框架可以使用 source-file 指令进行复制。在 plugin.xml 我试过:
<source-file src="libs/ios/mylib.framework" />
但是当我将插件添加到我的项目时出现错误:
mylib.framework 是一个目录(未复制)
我试图逐个文件复制框架文件,但它进入了错误的目录。
如何使用 plugin.xml 文件复制自定义 ios 框架?
我目前正在为 phonegap 3 制作插件。我有一个自定义框架可以使用 source-file 指令进行复制。在 plugin.xml 我试过:
<source-file src="libs/ios/mylib.framework" />
但是当我将插件添加到我的项目时出现错误:
mylib.framework 是一个目录(未复制)
我试图逐个文件复制框架文件,但它进入了错误的目录。
如何使用 plugin.xml 文件复制自定义 ios 框架?
好消息:在我们说话的时候,科尔多瓦的人似乎正在努力解决这个问题。有一个功能请求以及对 GitHub 的提交,声称可以解决此问题。framework
标签将支持该属性custom="true"
。例如,您可以为AWS iOS SDK 运行时框架执行以下操作:
<framework src="src/ios/Frameworks/AWSRuntime.framework" custom="true" />
更新:似乎此更改已于 2013 年 11 月 29 日(两天前)成为当前 Cordova 的稳定版本。只需更新您的 Cordova 和 Plugman 二进制文件,您就可以开始使用了。
$ npm update -g cordova # if using `cordova plugin add xyz`
$ npm update -g plugman # if using `plugman install --platform x --project y --plugin z`
您可以复制二进制文件(应该在“mylib.framework/Versions/A/”中)和标题(“.h”应该在“mylib.framwork/Versions/A/Headers”中)
像这样
<source-file src="libs/ios/mylib.framework/Versions/A/mylibBinary" framework="true" />
<header-file src="libs/ios/mylib.framework/Version/A/Headers/mylibHeader.h" />
...
您还必须手动添加依赖项,IE。:此框架需要 iOS AVFoundation.framework
,因此您也需要添加它。
<framework src="AVFoundation.framework" />
如果您想将此插件提交给 PhoneGap,您还必须知道一件事。
任何包含二进制库的应用程序都将被拒绝。这是因为作为代码审查过程的一部分,我们需要能够准确地看到插件中的内容。因此,在提交插件时,请确保它不包含二进制库。(电话间隙)
使用<framework src="libs/ios/mylib.framework" />
.