用于自定义Phonegap 3插件的plugin.xml

时间:2013-11-05 17:38:38

标签: cordova phonegap-plugins

我一定错过了什么。我正在尝试将现有的Phonegap插件转换为可以使用CLI进行安装。我的问题是没有任何源文件或框架被复制到平台文件夹中,我的config.xml没有得到该功能的更新。我已经看到了其他SO问题,但没有一个帮助过我。

的plugin.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文件。我在plugins文件夹中的ios.json文件中看到了config.xml的更改,但它们从未传播到实际项目。

我的文件结构是

Scanner
   /plugin.xml
   /src
     /ScannerSDK.h
     /Scanner.h
     /Scanner.m
     /libScannerSDK.a
   /www
     /scanner-plugin.js

我已经尝试更改文件权限,Xcode打开和关闭,删除插件的所有痕迹并重新开始,但到目前为止无济于事。

总结一下:src文件没有被复制到平台文件夹中,并且平台config.xml没有得到更新。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您是否尝试删除plugin.xml文件并重新运行命令?

即使我的源文件被下载到我的项目时我没有完全相同的问题,当我对plugin.xml文件进行更改时,他们没有被传播到项目的plugin.xml文件和文件/引用没有更新。但是,当我删除本地项目的plugin.xml文件并再次运行插件添加时,文件/引用已更新。也许您的初始plugin.xml没有对源文件的引用,现在您更新了它,更改不会传播到您的本地文件。