iOS上的Cordova插件不会调用本机代码

时间:2017-05-02 08:01:59

标签: ios cordova-plugins

我试图在pagehide事件(来自javascript)上调用一个插件 - 但是本机函数的调用似乎不起作用。 我的主叫javascript:

window.addEventListener("pagehide", function() {

               Hello.abc(function() {
                   console.log("sucess");
               }, function() {
                   console.log('error');
               }, ['Sample'])
           });

在我的plugins-directory中:

Hello.h:

 #import <Cordova/CDV.h>

@interface Hello : CDVPlugin

- (void)hello:(CDVInvokedUrlCommand *) command;

@end

Hello.m

    #import "Hello.h"
    #import <Cordova/CDV.h>
    @interface Hello ()
    {
        NSString *strCallBackID;
    }


    @end

    @implementation Hello



    - (void)hello:(CDVInvokedUrlCommand *) command{
    strCallBackID=command.callbackId;
    NSString *result=@"Hello";
    NSLog(@"Hello");
    CDVPluginResult *pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString: result]; 
    [self.commandDelegate sendPluginResult:pluginResult callbackId:strCallBackID];
    }
@end

我的插件代码:

cordova.define("ubee-plugin-hello.Hello", function(require, exports, module) {
module.exports = Hello = {

               abc : function(successCallback, errorCallback, params) {
               console.log("PARAM->"+params);

               var exec = require('cordova/exec');
               exec(successCallback, errorCallback, 'Hello', 'hello', [params]);
               }
};
});

0 个答案:

没有答案