【发布时间】:2013-11-05 17:38:37
【问题描述】:
我一定错过了什么。我正在尝试将现有的 Phonegap 插件转换为可通过 CLI 安装。我的问题是没有任何源文件或框架被复制到平台文件夹中,并且我的 config.xml 没有使用该功能进行更新。我已经看到了其他关于此的 SO 问题,但没有一个对我有帮助。
插件.xml
<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0"
id="com.test.scanner"
version="1.0.0">
<name>Scanner</name>
<js-module src="www/scanner-plugin.js" name="scanner-plugin">
<clobbers target="plugins.scanner" />
</js-module>
<platform name="ios">
<config-file target="config.xml" parent="/*">
<feature name="Scanner">
<param name="ios-package" value="Scanner"/>
</feature>
</config-file>
<header-file src="src/ScannerSDK.h" />
<header-file src="src/Scanner.h" />
<source-file src="src/Scanner.m" />
<framework src="src/libScannerSDK.a" />
</platform>
</plugin>
我运行命令
$ phonegap local plugin add ~/Dev/Cordova/Plugins/ios/Scanner
它说它安装得很好。然后我使用 CLI 构建项目,但我的 config.xml 没有更新,并且我的 .m .h .a 文件都不在项目中(尽管 xcode 认为它们应该在那里)。 js 文件在那里,cordova_plugins.js 文件已更新。我在插件文件夹中的 ios.json 文件中看到了 config.xml 等的更改,但它们从未传播到实际项目中。
我的文件结构是
Scanner
/plugin.xml
/src
/ScannerSDK.h
/Scanner.h
/Scanner.m
/libScannerSDK.a
/www
/scanner-plugin.js
我尝试过更改文件权限,打开和关闭 Xcode,删除插件的所有痕迹并重新开始,但到目前为止无济于事。
回顾一下:src 文件没有被复制到平台文件夹中,并且平台 config.xml 没有得到更新。
感谢您的帮助!
【问题讨论】:
-
您在这方面取得了进展吗?我有同样的问题,但我一直在做的是手动更新特定于平台的 config.xml 并将文件放入其中。问题是如果你曾经运行过 build 命令,它会删除这些条目。我希望你能覆盖它。
-
是和不是。我猜这些插件真的是为了与 github 等一起工作。尝试(如果可以)将您的插件上传到 github 存储库,看看是否有问题。我的问题是我无法在任何公共域上托管我的插件,所以我想尝试在云空间上安装私有 git。如果我能让事情正常工作,我会更新。旁注:我更新到 3.1,但我无法让它与非托管插件一起工作。