5

CDVPlugin を拡張するプラグイン クラスがあります。このプラグインは、HTML 側からのボタン クリックから呼び出されます。その後、UIImagePickerController を使用して 2 枚の写真を撮ります。次に、これらの画像を pluginresult を使用して JavaScript コールバック関数に送信しようとしています。

ここで、一度に 2 つの画像を送信しようとしているときに、UI がしばらく動かなくなります。そのため、結果をバックグラウンド スレッドで送信したいと考えています。また、javascript コールバック関数からそれを受け取る必要があります。

誰かがこれを以前にやったことがありますか?UIナビゲーションがスムーズになるようにこれを達成する方法はありますか....

4

1 に答える 1

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];
    }];
}
于 2013-05-28T13:28:03.117 に答える