您的位置:首页 > 移动开发 > Android开发

Android中读图片Exif信息的方法

2015-07-30 17:48 543 查看

Exif读取类

Android提供了读取写入Exif的API,但很可惜,这个API只能由指定文件名读取、写入Exif,效率低得可怜。

不得已,把Android系统代码里图库的一段摘了过来。

有Android源码的看源码中 packages/apps/Gallery2/ 部分,

没有或者图方便的直接看这里:

https://github.com/jxt1234/ThirdPartyUsefulCode/tree/master/android_app/exif

使用方法

和SDK中那个API用法基本一致,可参考:

http://www.cnblogs.com/hyzhou/p/3336812.html

不过这个Exif库支持从内存、流之中直接读取写入,方便很多。

用到的接口只有

ExifInterface

其中读取和写入的接口支持内存/流。

readExif 读取

writeExif 写入

其他用法一样。

使用实例

读取Exif中的缩略图示例

public void onHandle(final byte[] data){
ExifInterface exif = new ExifInterface();
try {
exif.readExif(data);
} catch (IOException e1) {
e1.printStackTrace();
}
Bitmap thumbnail_origin = null;
if (exif.hasThumbnail()){
thumbnail_origin = exif.getThumbnailBitmap();
}
/*.......*/
}


写入:

//Bitmap result = XXXXXXX;
//String file = YYYY;
//ExifInterface exif = ZZZZ;
FileOutputStream fstream = new FileOutputStream(file);
try {
exif.writeExif(result, fstream);
} catch (IOException e1) {
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android exif jpeg