cordova3.1.0:找不到插件或不是CDVPlugin

我试图build立我的第一个cordova应用程序,我不能得到一个插件工作。

我的应用程序是使用Cordova命令行界面构build的,所以我已经用这种方式添加了Camera插件:

cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-camera.git 

我的config.xml如下所示:

 <?xml version='1.0' encoding='utf-8'?> <widget id="com.dev.myapp" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0"> <name>My App</name> <description> A sample Apache Cordova application </description> <author email="dev@callback.apache.org" href="http://cordova.io"> Apache Cordova Team </author> <content src="index.html" /> <access origin="*" /> <preference name="fullscreen" value="true" /> <preference name="webviewbounce" value="true" /> <feature name="Camera"> <param name="ios-package" value="CDVCamera" /> </feature> </widget> 

我已经运行cordova build ,一切都很顺利,但是当我在Xcode中构build项目时,它首先告诉我CDVCamera.h, CDVCamera.m files丢失。 当我运行cordova plugin add时候,命令行界面是不是应该正确放置这些文件?

此外,即使我在我的项目中手动复制文件,该项目运行,但当我调用相机function,它会引发以下错误:

 ERROR: Plugin 'Camera' not found, or is not a CDVPlugin 

我知道我是新来的,但我不知道我做错了什么?

如果所有文件都存在时仍然出现此错误,请确保相关的源.m文件实际上是项目的目标成员。

为此,请selectXcode中的Plugin.m文件,并确保在“ 目标成员 ”下的右侧检查器窗格中选中了项目的checkbox。

删除和添加插件几次后,我有这个问题。

提示:当插件不是项目成员(如在Xcode 5.0中观察到的)时,相应的Plugin.h文件缺lessCDVPlugin类中声明的types的语法颜色突出显示。

如果你在Xcode项目中没有太多捆绑,那么解决这个问题最简单的方法就是:

 cordova platform remove ios 

接着…

 cordova platform add ios 

无论如何,这个问题都会被解决。 您不需要重新安装插件,当您重新添加平台时,它们会被安装。

好吧,看起来你必须添加所有你想要的插件,然后再创build内置的。 所有资源文件都正确定位。

我有与3.6电话相同的问题。 通过更新phonegap,问题就解决了。

 npm update -g cordova 

显然,人们必须有更新手机的愿望:)

让我只是说,即使你不认为这是你的问题,我会尝试克里斯·雷的解决scheme重置您的平台!

 cordova platform rm ios cordova platform add ios 

感谢Chris Rae的解决scheme! 它对我很好。 我把它和其他解决scheme收集到我的应用程序中,并将其添加到博客文章中。

http://blog.tylerbuchea.com/using-wkwebview-in-ios9-to-boost-ionic-cordova-performance/

我想我拿了另一个关于构build设置的解决scheme。 所以,不要生气/谢谢一堆!

我也有这个问题,以及重新安装插件,但设法解决它。 如果像我一样,删除平台不是一个select,因为你会放松太多的工作,这里有一个解决scheme:

步骤1:将CDVCamera.m添加到您的编译源(在构build阶段下)

步骤2:如果你的问题和我的一样,你会得到Apple Match-o-Linker的错误:将框架OpenAL和ImageIO添加到你的项目中。

第3步:重build并高兴:)