Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 初級開發 >> ExifInterface使用,Android 2.0新增類

ExifInterface使用,Android 2.0新增類

編輯:初級開發

從Android 2.0開始新增了ExifInterface類,ExifInterface類主要描述多媒體文件比如JPG格式圖片的一些附加信息,比如拍照的設備廠商,當時的日期時間,曝光時間,快門速度等。該類位於android.media.ExifInterface的位置,需要調用API Level至少為5即2.0 SDK。

  一、ExifInterface類給我們了一個實用的方法public byte[] getThumbnail () 這個方法可以生成一個縮略圖,返回一個字節數組,我們通過以前講到的通過OutputStream將其保存成一個JPG文件。當然如果要是顯示到一個Drawable對象,可以通過decodeByteArray(byte[], int, int) 類來解析這個字節數組,不過具體生成的分辨率還不清楚。

  二、圖片的MIME Exif信息

  圖片的的Exif信息和MP3的ID3標簽類似,使用了屬性和值的存儲方式。通過public void setAttribute (String tag, String value) 來設置,而獲取可以通過 public int getAttributeInt (String tag, int defaultValue) 和 public String getAttribute (String tag) 兩種方法都可以,getAttributeInt 重載方法一第二個參數為我們設置的默認值,如果成功則返回相應Tag的值;特定的整數內容為該方法直接返回值。而重載方法二該方法直接返回結果,如果失敗則為null。

  目前android SDK定義的Tag有:

TAG_DATETIME    時間日期
TAG_Flash   閃光燈
TAG_GPS_LATITUDE   緯度
TAG_GPS_LATITUDE_REF  緯度參考 
TAG_GPS_LONGITUDE   經度
TAG_GPS_LONGITUDE_REF  經度參考 
TAG_IMAGE_LENGTH   圖片長
TAG_IMAGE_WIDTH   圖片寬
TAG_MAKE   設備制造商
TAG_MODEL   設備型號
TAG_ORIENTATION   方向
TAG_WHITE_BALANCE   白平衡

  從android 2.0.1 SDK上看屬性不是很多,詳細的可能會在以後的版本中添加,調用示例如下

  String sFileName="cwj-android123.jpg";
  ExifInterface exif = new ExifInterface(filename);
  String sModel=exif.getAttribute(ExifInterface.TAG_MODEL);

   最終sModel就是拍照設備的型號,這裡我們可以看到是Nexus One或HTC Hero等等的字符,當然是用數碼相機拍照從PC上傳的是該文件原始生成的設備,比如IXUS 980等等。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved