Phonegap 3.4.0 和相机插件 (iOS) 的问题:CDVPlugin 类 CDVCamera (pluginName: camera) 不存在

Posted

技术标签:

【中文标题】Phonegap 3.4.0 和相机插件 (iOS) 的问题:CDVPlugin 类 CDVCamera (pluginName: camera) 不存在【英文标题】:Problems with Phonegap 3.4.0 and the Camera Plugin (iOS): CDVPlugin class CDVCamera (pluginName: camera) does not exist 【发布时间】:2014-03-29 16:20:19 【问题描述】:

我目前在 Phonegap 和 org.apache.cordova.camera 等插件方面存在很大问题。它们不会加载到我的项目中。

我在 *** 上找到了很多不同的答案: - 重新安装插件 - 删除平台并重建项目 - 创建一个全新的项目

还有更多,但没有解决我的问题。

这是我在 console.log 中找到的消息:

2014-03-29 15:08:19.123 Parking[31170:70b] Multi-tasking -> Device: YES, App: YES
2014-03-29 15:08:19.132 Parking[31170:70b] Unlimited access to network resources
2014-03-29 15:08:19.149 Parking[31170:70b] CDVPlugin class CDVLocation (pluginName: geolocation) does not exist.
2014-03-29 15:08:19.150 Parking[31170:70b] [CDVTimer][geolocation] 0.471950ms
2014-03-29 15:08:19.150 Parking[31170:70b] CDVPlugin class CDVCamera (pluginName: camera) does not exist.
2014-03-29 15:08:19.150 Parking[31170:70b] [CDVTimer][camera] 0.374973ms
2014-03-29 15:08:19.151 Parking[31170:70b] [CDVTimer][TotalPluginStartup] 1.603007ms
2014-03-29 15:08:19.247 Parking[31170:70b] Resetting plugins due to page load.

这就是我添加插件的方式:

phonegap plugin add org.apache.cordova.camera
phonegap plugin add org.apache.cordova.geolocation

在我的 config.xml 中,我添加了以下部分:

<feature name="Geolocation">
    <param name="ios-package" value="CDVLocation" />
</feature>
<feature name="Camera">
    <param name="ios-package" value="CDVCamera" />
</feature>

<gap:plugin name="org.apache.cordova.camera" />
<gap:plugin name="org.apache.cordova.geolocation" />

在我的项目中,我使用了他们文档中的相机示例代码,但 navigator.camera 未定义。

谁能帮我解决这个问题?

【问题讨论】:

您添加了哪个文件夹包含 config.xml?那里有两个。重要的是在暂存文件夹中,而不是在外面。 我的 config.xml 位于:ProjectFolder/www/config.xml - 这是正确的 config.xml 吗? 你发现了吗? 不,我已经尝试过 Cordova 而不是 Phonegap - Cordova 没有这些问题并且工作得很好。 【参考方案1】:

如果您的应用在 config.xml 文件中有空格,请尝试删除它们。删除插件并删除平台。然后添加平台并重新安装插件。感谢用户 Aras,这个过程解决了我的问题。 Plugin not found, or is not a CDVPlugin. Check your plugin mapping in config.xml

【讨论】:

【参考方案2】:

如果您使用 Xcode,请确保将相机插件文件实际添加到项目中。

在左侧的文件浏览器中选择文件CDVCamera.m,然后确保选中 Target Membership 面板中您的应用旁边的复选框。我的情况不是这样。

重复CDVJpegHeaderWriter.mUIImage+CropScaleOrientation.m

您可能还需要添加ImageIO.frameworkCoreLocation.framework

【讨论】:

以上是关于Phonegap 3.4.0 和相机插件 (iOS) 的问题:CDVPlugin 类 CDVCamera (pluginName: camera) 不存在的主要内容,如果未能解决你的问题,请参考以下文章

相机插件在 iOS 的 phonegap 应用程序中不起作用

使用 Phonegap/Cordova 相机插件从相机或图库中选择照片

Phonegap 应用程序 v.3.4.0 忽略 navigator.splashscreen.hide()

相机不适用于phonegap中的应用

相机插件不适用于 Android 的 PhoneGap Build

在 Cordova/PhoneGap 项目中手动插入插件