Проблема в том, что все это работает для изображений (снятых камерой или другим способом)
но он не работает для изображений WhatsApp. На самом деле, он копирует файл, но я проверяю, что скопированные изображения выглядят испорченными, я буду признателен, если кто-нибудь решит эту проблему, потому что я не смог найти никакого решения, заранее спасибо.
здесь я организую файл назначения и исходный файл и вызываю copyFileUsingStream функцию
List<Image> images = ImagePicker.getImages(data);
File f1 = new File(images.get(0).getPath());
File directory = new File(Environment.getExternalStorageDirectory(), "mommyTemp");
if (!directory.exists())
directory.mkdirs();
File f = new File(directory, "temp.jpg");
try {
copyFileUsingStream(f1, f);
} catch (IOException e) {
e.printStackTrace();
}
вот моя функция копирования
private static void copyFileUsingStream(File source, File dest) throws IOException {
InputStream is = null;
OutputStream os = null;
try {
is = new FileInputStream(source);
os = new FileOutputStream(dest);
BufferedInputStream bin = new BufferedInputStream(is);
BufferedOutputStream bou = new BufferedOutputStream(os);
int b = 0;
while (b != -1) {
b = bin.read();
bou.write(b);
}
} finally {
is.close();
os.close();
}
}