Android에서는 휴대 전화의 사진에서 비트 맵을 해독하면 원본의 EXIF 데이터가 손실됩니다. 이 비트 맵을 소켓을 통해 내 서버로 보내고 누락 된 EXIF 데이터를 보내려는 데이터에 다시 연결하려고합니다.안드로이드에서 직렬화 된 비트 맵에 EXIF 메타 데이터를 첨부하는 방법은 무엇입니까?
Bitmap bitmap = ...
ByteArrayOutputStream stream = new ByteArrayOutputStream(bitmap);
bitmap.compress(CompressFormat.JPEG, 70, stream);
byte[] input = stream.toByteArray();
내가 EXIF에서 얻을 수있는 ExifInterface를 사용하려면 :
나는 미디어 스토어 MediaStore에서 비트 맵 객체를로드하고 소켓을 통해 그것을 보낼 준비 바이트 배열로 압축 일부 코드가 메타 데이터를 SD 카드의 원본 jpeg에 저장하고 어떻게 든 서버 바이트 (서버에서이 작업을 수행하지 않고)에 올바른 EXIF가있는 jpeg을 추출 할 수있는 방식으로 나가는 바이트 배열에 추가합니다. 더 라이브러리를 사용하지 않는 해결책을 찾기 위해 최적, 내가 좋아하는 것 :
String path = ... //bitmap file path
ExifInterface exif = new ExifInterface(path);
... = exif.getAttribute(...)
편집 : 지금까지, 나는 모든 EXIF 데이터를 읽을 ExifInterface을 사용할 수 있었다. EXIF가 포함 된 원래 jpeg의 바이트 배열 인덱스를 얻고이 바이트를 bitmap.compress(...)
에 의해 생성 된 바이트 배열에 추가하면됩니다.
당신이 바이트 배열에 EXIF 정보를 추가로 성공 했습니까? – Vikas