我有一个扩展CDVPlugin的插件类。此插件将从HTML侧的按钮单击调用。之后我使用UIImagePickerController拍摄两张照片。然后我尝试使用pluginresult将这些图像发送到javascript回调函数。
在这里,当我试图一次发送两个图像时,UI被卡住了一段时间。所以,我想在后台线程中发送结果。而且我应该从javascript回调函数接收它。
之前有人这样做过吗?有没有办法实现这一点,以便UI导航更顺畅....
答案 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];
}];
}