В приведенном ниже коде я только что прочитал изображение и сохранил его в галлерею.
public void onImageAvailable(ImageReader reader) {
Image image = null;
try {
image = reader.acquireLatestImage();
buffer = image.getPlanes()[0].getBuffer();
bytes = new byte[buffer.capacity()];
buffer.get(bytes);
save(bytes);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
} finally {
if (image != null) {
image.close();
}
}
приватное сохранение void (байт [] байт) создает IOException {
if (!myDir.exists()) {
myDir.mkdirs();
}
Random generator = new Random();
int n = 10000;
n = generator.nextInt(n);
String fname = "Image-" + n + ".png";
File file = new File(myDir, fname);
if (file.exists()) file.delete();
OutputStream output = null;
try {
output = new FileOutputStream(file);
output.write(bytes);
scanFile(file.getAbsolutePath());
// finalint вращение = getImageOrientation (file.getAbsolutePath ());
} finally {
if (null != output) {
output.close();
}
}
}