将GPS坐标写入Android中的照片文件

时间:2014-11-06 07:47:16

标签: android gps photo exif

我在看很多问题,但仍然很困惑。

我想在我的文件中添加exif块,在哪里以及如何执行此操作。

我是Android编程语言的新手。我有一个摄像头代码,我生成一个具有唯一名称的照片文件,它可以顺利地将照片保存在sdcard上我自己创建的目录中。但是,我无法判断如何将EXIFINTERFACE插入我的照片文件。我想分配gps坐标,我有一个位置监听器类工作,我将从那里获取Lattitude Longitude Strings来设置Exif块的属性

ExifInterface exif = new ExifInterface(string filepath);

这个命令需要文件路径字符串,我用两种方法生成文件。

 public static File getPhotoDirectory()  {
    File outputDir = null;
    String externalStorageState = Environment.getExternalStorageState();
    if (externalStorageState.equals(Environment.MEDIA_MOUNTED)) {
        File pictureDir =
            Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);
        outputDir = new File(pictureDir, "HasanDirectory");
        if(!outputDir.exists())  {
            if(!outputDir.mkdirs()) {
                String message = "Failed to create directory:" + outputDir.getAbsolutePath();
                Log.e(LOG_TAG, message);
                outputDir = null;
            }
        }
    }


    return outputDir;
}

  public static File generateTimeStampPhotoFile() {
    File photoFile = null;
    File outputDir = getPhotoDirectory();

    if (outputDir != null) {
        String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
        //if (type == MEDIA_TYPE_IMAGE){
        picCount++; // "HA" provides a unique number to each pic
        String photoFileName =  "IMG_" + timeStamp + "_" + picCount + ".jpg";

        photoFile = new File(outputDir, photoFileName);
        }

    return photoFile;
}

指导我如何添加exif块?

或者,如果你正在读这篇文章吗?将GPS坐标分配给图片的其他方法是什么? android中的Camera类的setParameters函数有效吗?

0 个答案:

没有答案