【发布时间】: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。