2013-05-23 4 views

답변

0

여기

ExifInterface exif = new ExifInterface(filePhoto.getPath()); 
    String date=exif.getAttribute(ExifInterface.TAG_DATETIME); 
+0

onActivityResult의 감사 인 onActivityResult

Uri selectedImageUri = data.getData(); 

에 아래의 코드를 사용 당신,이 작품. – softeyes

+0

내 대답을 정확하게 표시해 주시겠습니까 ?? :-) –

+0

png 파일에 exif 데이터가 없기 때문에 그림이 .png이면 작동하지 않습니다. – vilpe89

1

가고, .There 당신이 여기

그리고 필요한 코드가 필요한 모든 무엇을 얻을 것이다 링크 here에서 살펴 보자. 이 코드는 갤러리를 열어 사진을 선택하면 실제 경로와 날짜를 얻습니다. 그런 다음 원하는대로 할 수 있습니다. 당신이 onActivityResult의 결과를 얻을 수 갤러리에서 모든 이미지를 선택한 후

@Override 
public void onClick(View v) { 
    Intent intent = new Intent(); 
    intent.setType("image/*"); 
    intent.setAction(Intent.ACTION_GET_CONTENT); 
    intent.addCategory(Intent.CATEGORY_OPENABLE); 
    startActivityForResult(intent, 1); 
} 

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    if (requestCode == 1 && resultCode == Activity.RESULT_OK) 
    { 
     if (bitmap != null) bitmap.recycle(); 

     Uri imageUri = data.getData(); 
     String realPath = getRealPathFromURI(imageUri); 

     File selectedFile = new File(realPath); 
     Date date = new Date(selectedFile.lastModified()); 
     String time = new SimpleDateFormat("HH:mm:ss").format(date); 

     Log.i("File path", realPath); 
     Log.i("File time", time); 

     bitmap = BitmapFactory.decodeFile(realPath); 
     imageView.setImageBitmap(bitmap); 

     super.onActivityResult(requestCode, resultCode, data); 
    } 
} 

public String getRealPathFromURI(Uri contentUri) { 
    String[] proj = { MediaStore.Images.Media.DATA }; 
    Cursor cursor = getContentResolver().query(contentUri, proj, null, null, null); 
    int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA); 
    cursor.moveToFirst(); 
    return cursor.getString(column_index); 
} 
+0

감사합니다. 그러나 이것은 날짜 만 표시하지만 시간이 없습니다. – softeyes

+0

[this] (http://developer.android.com/reference/java/text/SimpleDateFormat.html)을 사용할 수 있습니다. 이렇게 : String time = new SimpleDateFormat ("HH : mm : ss"). 형식 (날짜); – vilpe89

+0

코드를 편집 했으므로 이제 원하는 시간 변수가 포함됩니다! – vilpe89

1

dataIntent

Cursor cursor = getContentResolver().query(selectedImageUri, null, null, 
       null, null); 
cursor .moveToFirst(); 
int column_index_date_taken = cursor 
       .getColumnIndexOrThrow(MediaStore.Images.Media.DATE_TAKEN); 
int column_index_date_added = cursor 
       .getColumnIndexOrThrow(MediaStore.Images.Media.DATE_ADDED); 

String dateTaken = cursor.getString(column_index_date_taken); 
String dateAdded = cursor.getString(column_index_date_added); 
+0

고맙습니다. 곧 내가 시도하고 업데이트 할 것입니다. – softeyes

관련 문제