ビデオを.netのWebサービスに送信する必要があります。ビデオが約2MBまたは6o7秒で問題ない場合は、文字列base64エンコードを送信しますが、それより重い場合は、Bas.encode[byte[]を実行するとメモリ不足エラーが発生します。 );
これは私のコードです:
videoPath = getRealPathFromURI(fileUri);
File tmpFile = new File(videoPath);
in = null;
in = new BufferedInputStream(new FileInputStream(tmpFile));
bos = new ByteArrayOutputStream();
long tamano = tmpFile.length();
int iTamano = (int) tamano;
byte[] b = new byte[iTamano];
int bytesRead;
while ((bytesRead = in.read(b)) != -1) {
bos.write(b, 0, bytesRead);
}
ficheroAEnviar = bos.toByteArray();
try {
strBase64 = Base64.encode(ficheroAEnviar);
}
catch (Exception e) {
correcto = false;
e.printStackTrace();
}
この行でクラッシュします:strBase64 = Base64.encode(ficheroAEnviar);