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

时间:2013-03-19 05:03:18

标签: javascript ios objective-c cordova phonegap-plugins

我尝试安装this phonegap ios插件,但它出现错误“错误:插件”未找到,或者不是CDVPlugin。请检查config.xml中的插件映射。在我的config.xml中

 <plugin name="Flurry" value="FlurryPhoneGapPlugin" />

并在plugin.js

cordova.exec(successCallback, successCallback, 'Flurry', 'startSession', [key]);

和插件.h文件

#import <Foundation/Foundation.h>
#import <Cordova/CDV.h>

@interface FlurryPhoneGapPlugin : CDVPlugin

FlurryPhoneGapPlugin.m文件

 #import "FlurryPhoneGapPlugin.h"
   #import <Cordova/CDV.h>

   @implementation FlurryPhoneGapPlugin

服务名称和操作名称,Objectivec Classname在config.xml中相同,

收到此错误后,我尝试根据this

创建自己的简单echo插件
#import <Foundation/Foundation.h>
#import <Cordova/CDV.h>

@interface FlurryPhoneGapPlugin : CDVPlugin


 - (void)myMethod:(CDVInvokedUrlCommand*)command;
@end

和.m文件

#import "FlurryPhoneGapPlugin.h"
#import <Cordova/CDV.h>

@implementation FlurryPhoneGapPlugin



(void)myMethod:(CDVInvokedUrlCommand*)command{


  NSLog(@"hi");
  CDVPluginResult* pluginResult = nil;
  NSString* echo = [command.arguments objectAtIndex:0];

  if (echo != nil && [echo length] > 0) {
    pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString:echo];
  } else {
    pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_ERROR];
  }

  [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId];


}
@end

我的plugin.js文件

cordova.exec(success, error , 'Flurry', 'myMethod', ['19']);

我的config.xml

    <plugin name="Flurry" value="FlurryPhoneGapPlugin" />

但这次我也有错误

    2013-03-19 10:30:46.349 artra[15560:707] ERROR: Plugin 'Flurry' not found, or is not a CDVPlugin. Check your plugin mapping in config.xml.
2013-03-19 10:30:46.354 artra[15560:707] -[CDVCommandQueue executePending] [Line 103] FAILED pluginJSON = [
  null,
  "",
  "success",
  [
    "error",
    "Flurry",
    "myMethod",
    [
      "19"
    ]
  ]
]

1 个答案:

答案 0 :(得分:0)

在Xcode中确保您的config.xml不是“灰色”。 如果文件是灰色的,则表示尚未保存。 没有尝试干净。

如果您设法解决了问题,请告诉我们:)