Android'de, telefondaki bir fotoğraftaki Bitmap'in kodunu çözerken, orijinaldeki EXIF verileri kaybolur. Bu Bitmap'i bir soket aracılığıyla sunucuma gönderiyorum ve eksik EXIF verilerini gönderilmekte olan verilere yeniden eklemek istiyorum.Android'de seri hale getirilmiş bir Bitmap'e EXIF meta verileri nasıl eklenir?
Bitmap bitmap = ...
ByteArrayOutputStream stream = new ByteArrayOutputStream(bitmap);
bitmap.compress(CompressFormat.JPEG, 70, stream);
byte[] input = stream.toByteArray();
Ben EXIF ulaşmak için ExifInterface kullanmak istiyorum:
Ben Mediastore bir Bitmap nesnesi yükleyen ve bir soket üzerinden göndermek için hazırlık için bir bayt dizisi sıkıştırır bazı kod var SD karttaki orijinal jpeg'deki meta veriler ve bir şekilde sunucu tarafındaki tüm doğru EXIF'lerle bir jpeg çıkarabilmem için giden bayt dizisine bunu ekleyelim (umarız bu sunucuda bunu yapmadan). Hiçbir kütüphaneleri kullanan bir çözüm bulmak için Optimal, İsterdim:
String path = ... //bitmap file path
ExifInterface exif = new ExifInterface(path);
... = exif.getAttribute(...)
DÜZENLEME: Şimdiye kadar, bütün EXIF verilerini okumak için ExifInterface kullanmayı başardı. EXIF içeren orijinal jpeg'in bayt dizisinin indislerini alabildiysem ve bu baytları bitmap.compress(...)
tarafından üretilen bayt dizisine en iyi olacak şekilde ekler/ekler.
Eğer bayt dizisine exif bilgisi eklemenin başarılı oldu mu? – Vikas