情况:我正在构建一个 cordova 插件来将现有的 iOS 库与 Ionic 连接起来。方法的基本映射已经完成并且可以正常工作,这意味着我可以通过 Angular 方法调用 iOS 方法并获得成功/错误回调。
问题:调用了一个登录方法,然后调用了适当的委托(delegate)方法(例如 userDidLoginWithSuccess)。从登录方法回调到 cordova 插件很容易,但我需要以某种方式从委托(delegate)方法回调,以便让 Ionic 应用程序知道用户是否成功登录。
对此有什么想法吗?谢谢。
PS:我检查了这篇文章,虽然这是一个类似的问题,但没有帮助。 Phonegap - Send message to Javascript from Objective-c in a plugin delegate
最佳答案
在您的 .h 上创建一个属性 callbackId,您将使用它来存储插件的回调标识符
@property (nonatomic, strong) NSString* callbackId;
然后,在您的插件方法中,将 callbackId 存储在您创建的属性中。
self.callbackId = command.callbackId;
最后,在委托(delegate)上使用 callbackId 发送插件结果
CDVPluginResult* result = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString:@"string result"];
[self.commandDelegate sendPluginResult:result callbackId:self.callbackId];
关于javascript - 从 Objective C 委托(delegate)回调到 Cordova 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32719016/