Javascript 从Objective C委托回调Cordova插件

Javascript 从Objective C委托回调Cordova插件,javascript,ios,objective-c,cordova,ionic,Javascript,Ios,Objective C,Cordova,Ionic,情境:我正在构建一个cordova插件,将现有的iOS库与Ionic连接起来。方法的基本映射已经完成并且正在工作,这意味着我可以通过Angular方法调用iOS方法并获得成功/错误回调 问题:有一个login方法被调用,之后会调用相应的委托方法(例如userDidLoginWithSuccess)。从login方法回调到cordova插件很容易,但我需要从delegate方法回调,以便让爱奥尼亚应用程序知道用户是否成功登录 有什么想法吗?谢谢 附言:我查看了这篇文章,虽然这是一个类似的问题,但没

情境:我正在构建一个cordova插件,将现有的iOS库与Ionic连接起来。方法的基本映射已经完成并且正在工作,这意味着我可以通过Angular方法调用iOS方法并获得成功/错误回调

问题:有一个login方法被调用,之后会调用相应的委托方法(例如userDidLoginWithSuccess)。从login方法回调到cordova插件很容易,但我需要从delegate方法回调,以便让爱奥尼亚应用程序知道用户是否成功登录

有什么想法吗?谢谢


附言:我查看了这篇文章,虽然这是一个类似的问题,但没有帮助

在.h上创建一个属性callbackId,用于存储插件的回调标识符

@property (nonatomic, strong) NSString* callbackId;
然后,在plugin方法中,将callbackId存储在您创建的属性上

self.callbackId = command.callbackId;
最后,在委托上使用callbackId发送插件结果

CDVPluginResult* result = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString:@"string result"];
[self.commandDelegate sendPluginResult:result callbackId:self.callbackId];

谢谢@jcesarmobile,这正是我想要的。有没有人可以举出一个实现这个的例子?我也为Swift做了同样的事情。我已经连接到Swift密码,可以启动该密码。这是一个iBeacon插件,有很多代理。有人对如何使用Swift获取回调有什么建议吗?我试过用这种方法,但似乎不起作用。谢谢您可以尝试发送“无结果”并将keepcallback设置为true。一些objective-c代码self.pluginResult=[CDVPluginResult resultWithStatus:CDVCommandStatus_NO_RESULT];[self.pluginResult setKeepCallbackAsBool:YES];当然,我在发表评论/问题后马上解决了这个问题。在“listener函数”中,您只需确保插件结果具有CDVCommandStatus_NO_结果,并在下一行将插件的“setKeepCallback”设置为true。然后你按照这个答案做剩下的事情。