【问题标题】:Phonegap plugin on iOS not calling native codeiOS上的Phonegap插件不调用本机代码
【发布时间】:2013-02-19 11:36:45
【问题描述】:

我正在尝试在 iOS 上实现我的第一个 phonegap 插件(2.3 版) - 但本机函数的调用似乎不起作用。

我的插件就是基于这个介绍: http://docs.phonegap.com/en/2.3.0/guide_plugin-development_ios_index.md.html#Developing%20a%20Plugin%20on%20iOS

所以我添加到 config.xml 的插件部分:

<plugin name="Echo" value="Echo" />

我的调用javascript:

$(document).ready (function (){
    $('#testBtn').submit(function () { 
        alert("test");
        var param = ["a", false];
        cordova.exec(
            function(winParam) { alert("ok");    },
            function(err)      { alert("error"); },
            "Echo", "echo", param);
        return false;
    });
}

(通过推送我的testBtn调用第一行的警报,所以其余的也应该执行......)

在我的插件目录中:

回声.h:

#import <Cordova/CDV.h>

@interface Echo : CDVPlugin

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

@end

回声.m:

#import "Echo.h"

@implementation Echo


- (void)echo:(CDVInvokedUrlCommand*)command
{
    NSLog(@"echo!");
}

@end

Echo.m 中的 echo-Function 永远不会被调用...谁能告诉我为什么?我没有收到任何错误消息 - 只是没有任何反应......

【问题讨论】:

  • 尝试在你的 .m 中导入#import
  • 我试过了,但没有任何改变。
  • 您查看过 xcode 控制台窗口吗?回声消息应该在那里。不会出现 ok 或 error 的警报,因为您没有调用 [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId];
  • 对不起,对不起,对不起......我的错。 cordova-2.3.0.js 在错误的文件夹中。谢谢你的帮助,jcesar。

标签: ios cordova plugins


【解决方案1】:

我和你一样在这一步中挣扎。然后我在设备准备好后调用了那个javascript函数。问题已解决。现在,它工作正常...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多