iOS cordova插件:如何将ios插件的插件结果发送到后台线程中的javascript

时间:2013-05-28 13:07:35

标签: ios cordova

我有一个扩展CDVPlugin的插件类。此插件将从HTML侧的按钮单击调用。之后我使用UIImagePickerController拍摄两张照片。然后我尝试使用pluginresult将这些图像发送到javascript回调函数。

在这里,当我试图一次发送两个图像时,UI被卡住了一段时间。所以,我想在后台线程中发送结果。而且我应该从javascript回调函数接收它。

之前有人这样做过吗?有没有办法实现这一点,以便UI导航更顺畅....

1 个答案:

答案 0 :(得分:6)

这样的事情:

    - (void)myPluginMethod:(CDVInvokedUrlCommand*)command
{
    // Check command.arguments here.
    [self.commandDelegate runInBackground:^{
        NSString* payload = nil;
        // Some blocking logic...
        CDVPluginResult* pluginResult = [CDVPluginResult resultWithStatus:CDVCommandStatus_OK messageAsString:payload];
        // The sendPluginResult method is thread-safe.
        [self.commandDelegate sendPluginResult:pluginResult callbackId:command.callbackId];
    }];
}