1

ビデオと画像をリモート サーバーにアップロードし、次のコードを使用してそれらを nsdata に変換しています。

ALAssetRepresentation *rep = [asset defaultRepresentation];
Byte *buffer = (Byte*)malloc(rep.size);
NSUInteger buffered = [rep getBytes:buffer fromOffset:0.0 length:rep.size error:nil];
//NSData *data = [NSData dataWithBytesNoCopy:buffer length:buffered freeWhenDone:YES];
NSData *imageData = [NSData dataWithBytesNoCopy:buffer length:buffered freeWhenDone:YES];

小さいサイズの動画や画像の場合、このコードは正常に機能しますが、大きい動画や画像の場合、アプリがクラッシュします。

4

1 に答える 1

0

提案された解決策の 1 つは、それらの画像や動画を分割して、部分ごとにアップロードすることです。

  1. アップロードするファイルを開きます。
  2. 読んで、5MBとしましょう。
  3. それらを NSDATA に置きます。4 アップロードします。
  4. NSDATA をクリアします。

フォーム ポイント 2 を繰り返します。

于 2013-10-10T14:51:05.470 に答える