如何使用 Phonegap 2.4 在 config.xml 中声明 Canvas2Image 插件

Posted

技术标签:

【中文标题】如何使用 Phonegap 2.4 在 config.xml 中声明 Canvas2Image 插件【英文标题】:How to Declare Canvas2Image Plugin in config.xml using Phonegap 2.4 【发布时间】:2013-10-15 06:12:33 【问题描述】:

我想为我的 ios 应用程序使用 Canvas2Image 插件来保存图像。而且我正在使用与 Xcode 5 兼容的 PhoneGap 2.9。我不知道如何在 PhoneGap 2.9 中声明插件。谁能告诉我在 PhoneGap 2.9 中插件的绑定是如何发生的。

插件链接 https://github.com/devgeeks/Canvas2ImagePlugin

虽然我将 .h 和 .m 添加到项目中,但我将 Canvas2ImagePlugin.js 复制到了我的目录中。插件没有被调用。

任何帮助都会非常显着。

而我的 Config.xml 格式如下

    <plugins></plugins>

    <plugin name="Accelerometer" value="CDVAccelerometer"/>
    <plugin name="Battery" value="CDVBattery"/>
    <plugin name="Camera" value="CDVCamera"/>
    <plugin name="Capture" value="CDVCapture"/>
    <plugin name="ChildBrowserCommand" value="ChildBrowserCommand"/>
    <plugin name="InAppBrowser" value="CDVInAppBrowser" />

    <plugin name="Compass" value="CDVLocation"/>
    <plugin name="Contacts" value="CDVContacts"/>
    <plugin name="Debug Console" value="CDVDebugConsole"/>
    <plugin name="Device" value="CDVDevice"/>
    <plugin name="File" value="CDVFile"/>
    <plugin name="FileTransfer" value="CDVFileTransfer"/>
    <plugin name="Geolocation" value="CDVLocation"/>
    <plugin name="Logger" value="CDVLogger"/>
    <plugin name="Media" value="CDVSound"/>
    <plugin name="NetworkStatus" value="CDVConnection"/>
    <plugin name="Notification" value="CDVNotification"/>
    <plugin name="PushNotification" value="PushNotification"/>
    <plugin name="org.apache.cordova.barcodeScanner" value="CDVBarcodeScanner"/>
    <plugin name="com.tesitng.Canvas2ImagePlugin" value="Canvas2ImagePlugin"/>

</plugins>
<access origin="*"/>

我将 Canvas2ImagePlugin.h 和 Canvas2ImagePlugin.m 添加到 cordova 项目的 plugins 文件夹中

【问题讨论】:

【参考方案1】:

好的,现在我看到您使用的是旧插件格式,我根据您编辑的问题编辑了答案:-) 试试这个:

<plugins>   
    <plugin name="Accelerometer" value="CDVAccelerometer"/>
    <plugin name="Battery" value="CDVBattery"/>
    <plugin name="Camera" value="CDVCamera"/>
    <plugin name="Capture" value="CDVCapture"/>
    <plugin name="ChildBrowserCommand" value="ChildBrowserCommand"/>
    <plugin name="InAppBrowser" value="CDVInAppBrowser" />
    <plugin name="Compass" value="CDVLocation"/>
    <plugin name="Contacts" value="CDVContacts"/>
    <plugin name="Debug Console" value="CDVDebugConsole"/>
    <plugin name="Device" value="CDVDevice"/>
    <plugin name="File" value="CDVFile"/>
    <plugin name="FileTransfer" value="CDVFileTransfer"/>
    <plugin name="Geolocation" value="CDVLocation"/>
    <plugin name="Logger" value="CDVLogger"/>
    <plugin name="Media" value="CDVSound"/>
    <plugin name="NetworkStatus" value="CDVConnection"/>
    <plugin name="Notification" value="CDVNotification"/>
    <plugin name="PushNotification" value="PushNotification"/>
    <plugin name="org.apache.cordova.barcodeScanner" value="CDVBarcodeScanner"/>
    <plugin name="Canvas2ImagePlugin" value="Canvas2ImagePlugin"/>
</plugins>
<access origin="*"/>

【讨论】:

确定。我应该在哪里添加 Canvas2ImagePlugin.h 、 Canvas2ImagePlugin.m 和 Canvas2ImagePlugin.js ? .m 和 .h 在 /your-project/your-project/Plugins/ 中,.js 在 /your-project/www/ 中,以及 index.html。确保将 .h 和 .m 文件添加为 Xcode 中的资源

以上是关于如何使用 Phonegap 2.4 在 config.xml 中声明 Canvas2Image 插件的主要内容,如果未能解决你的问题,请参考以下文章

无法在 cordova 2.4 中创建 phonegap ios 插件

OpenLDAP 2.4 禁止匿名用户访问

Phonegap解决错误:Error initializing Cordova:Class not found

InAppBrowser 未启动

如何在phonegap中使用android原生代码?

如何使用phonegap在状态栏上创建通知