본문 바로가기
Android

[Android] api29 이상. MediaStore DATE_MODIFIED 을 날짜 형식으로 가져오기

by bryan.oh 2020. 9. 12.
반응형

Android 11 / API 29

 

이전 버전의 안드로이드에서 Media 데이터를 READ/WRITE 하는 방식이 변경됐습니다.

관련 내용은 여기 에서 확인하시고요.

 

참, 귀찮네요. 개발한 앱을 다 수정해야되다니..

그 중에서 일단 미디어 파일을 가져오는걸 바꾸는 중인데,

수정된 날짜를 가져오는 것에 대해서 남기려고 합니다.

 

일단 컬럼 index 를 찾아야겠죠.

이건 한번만 호출하고 cursor.moveToNext() 를 하면서 쓰면 됩니다.

int modColumn = cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DATE_MODIFIED);
while (cursor.moveToNext()) {
	// 생략
	long modDate = cursor.getLong(modColumn);
	String mDateStr = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(modDate * 1000)
	// 생략
}

봐야할 것.

  • MeediaStore.Video.Media.DATE_MODIFIED 로 컬럼 index 를 가져옵니다. (여기서는 video 파일)

  • cursor 에서 getLong 을 사용합니다.

  • modDate 는 1970년부터의 '초' 라서 1000을 곱해줘야합니다. (자세한내용은 여기)

 

External Storage 에서 file list 가져오는것은 개발 끝나면 정리해서 글 써보겠습니다.

 

 

 

 

 

 

728x90
반응형

댓글