我已经成功使用
现在,EXIF已保存到JPEG文件中:查看我的应用程序的截图。这也得到了Photo Editor应用程序的验证:查看那个的截图。
但是,如果我注释掉set+save并只对上述相同图像进行get操作,则我的应用程序无法获取/查看属性。
所以:由于照片编辑器应用程序可以读取数据,我在写入/保存方面做错了什么。此外,如果我在同一图像文件上重新运行集合+保存操作,我的应用程序会复制相同的标记!这是否比简单的设置+保存,然后获取更多内容?
更新:似乎问题与设备有关。尽管ExifInterface明确支持的标记中没有“UserComment”,但某些设备仍然能够设置和获取标记中的值。它在Nexus上有效,但在我的Sony Xperia上无效。请查看我的代码以获取(查询)和设置(更新)“UserComment”标记在我发布的有关内容提供程序的其他帖子中。
ExifInterface
从我的手机上读取JPEG文件的EXIF标签/属性(元数据),我还可以设置属性和保存属性。奇怪的是,如果我在图像文件上进行了设置+保存操作,我的应用程序就能够获取属性并显示它。我还可以在另一个应用程序(Google Play上的Photo Editor)中验证EXIF数据确实被写入了。ExifInterface exif = new ExifInterface(path_to_image);
String x = exif.getAttribute("UserComment"); // here, x is always null...
exif.setAttribute("UserComment", "testtest");
exif.saveAttributes();
x = exif.getAttribute("UserComment"); // x = "testtest"
现在,EXIF已保存到JPEG文件中:查看我的应用程序的截图。这也得到了Photo Editor应用程序的验证:查看那个的截图。
但是,如果我注释掉set+save并只对上述相同图像进行get操作,则我的应用程序无法获取/查看属性。
ExifInterface exif = new ExifInterface(path_to_image);
String x = exif.getAttribute("UserComment"); // x = null (although we know it isn't)
所以:由于照片编辑器应用程序可以读取数据,我在写入/保存方面做错了什么。此外,如果我在同一图像文件上重新运行集合+保存操作,我的应用程序会复制相同的标记!这是否比简单的设置+保存,然后获取更多内容?
更新:似乎问题与设备有关。尽管ExifInterface明确支持的标记中没有“UserComment”,但某些设备仍然能够设置和获取标记中的值。它在Nexus上有效,但在我的Sony Xperia上无效。请查看我的代码以获取(查询)和设置(更新)“UserComment”标记在我发布的有关内容提供程序的其他帖子中。