diff options
author | Angus Kong <shkong@google.com> | 2013-03-26 11:40:40 -0700 |
---|---|---|
committer | Angus Kong <shkong@google.com> | 2013-03-26 15:42:36 -0700 |
commit | 0d00a8907096b9970ac64f52abbd2bfc1ed751b6 (patch) | |
tree | bd92779ff5810d46128c0f11a7a84c78ad52d35f /src/com/android/camera/Storage.java | |
parent | 88efa27609d08a749cda7ba928cb825de71a7f2b (diff) | |
download | android_packages_apps_Snap-0d00a8907096b9970ac64f52abbd2bfc1ed751b6.tar.gz android_packages_apps_Snap-0d00a8907096b9970ac64f52abbd2bfc1ed751b6.tar.bz2 android_packages_apps_Snap-0d00a8907096b9970ac64f52abbd2bfc1ed751b6.zip |
Add GPSDirection tag using ExifInterface.
bug:8115825
Change-Id: Iefcbbddbb7f9fed0c386214b428d4743f67d0dd9
Diffstat (limited to 'src/com/android/camera/Storage.java')
-rw-r--r-- | src/com/android/camera/Storage.java | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/com/android/camera/Storage.java b/src/com/android/camera/Storage.java index 648fa7d87..ba995edef 100644 --- a/src/com/android/camera/Storage.java +++ b/src/com/android/camera/Storage.java @@ -30,6 +30,7 @@ import android.provider.MediaStore.MediaColumns; import android.util.Log; import com.android.gallery3d.common.ApiHelper; +import com.android.gallery3d.exif.ExifInterface; import java.io.File; import java.io.FileOutputStream; @@ -49,7 +50,7 @@ public class Storage { public static final long UNAVAILABLE = -1L; public static final long PREPARING = -2L; public static final long UNKNOWN_SIZE = -3L; - public static final long LOW_STORAGE_THRESHOLD= 50000000; + public static final long LOW_STORAGE_THRESHOLD = 50000000; @TargetApi(Build.VERSION_CODES.JELLY_BEAN) private static void setImageSize(ContentValues values, int width, int height) { @@ -77,11 +78,19 @@ public class Storage { // Save the image and add it to media store. public static Uri addImage(ContentResolver resolver, String title, - long date, Location location, int orientation, byte[] jpeg, - int width, int height) { + long date, Location location, int orientation, ExifInterface exif, + byte[] jpeg, int width, int height) { // Save the image. String path = generateFilepath(title); - writeFile(path, jpeg); + if (exif != null) { + try { + exif.writeExif(jpeg, path); + } catch (Exception e) { + Log.e(TAG, "Failed to write data", e); + } + } else { + writeFile(path, jpeg); + } return addImage(resolver, title, date, location, orientation, jpeg.length, path, width, height); } |