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并高兴:)