Nuke Olaf - Log Store
[Android] 안드로이드 - uri 를 통해 파일의 이름과 크기 가져오기 본문
안드로이드의 보안정책이 강화되면서, 다른 앱에 있는 파일의 RealPath 를 가져올 수 없게 되었다.
즉 File:// ~~~ 이런식으로 돌아오던 파일 주소(real path)가
content:// ~~ 이런식으로 돌아오면서 파일주소를 사용한 기능을 사용하기가 어려워졌다.
아래의 코드는 uri 를 통해 content Resolver 를 통해 파일의 이름과 크기를 가져온다.
* returnIntent 는 다른앱에서 사진을 선택했을때 onActivityResult 로 돌아온 Intent 이다.
returnIntent.data?.let { returnUri ->
context.contentResolver.query(returnUri, null, null, null, null)
}?.use { cursor ->
val nameIndex = cursor.getColumnIndex(OpenableColumns.DISPLAY_NAME)
val sizeIndex = cursor.getColumnIndex(OpenableColumns.SIZE)
cursor.moveToFirst()
val name = cursor.getString(nameIndex) // 이미지 이름
val size = cursor.getLong(sizeIndex).toString() // 이미지 사이즈
}
참고 사이트>>>
안드로이드 developers : https://developer.android.com/training/secure-file-sharing/retrieve-info#kotlin
'Android' 카테고리의 다른 글
[Android] 안드로이드 - invalid vcs root mapping 오류 (0) | 2020.05.02 |
---|---|
[Android] 안드로이드 - 멀쩡하던 프로젝트 레이아웃 리소스에 빨간줄이 뜰때 (0) | 2020.05.02 |
[Android] 안드로이드 - okHttp Header 인터셉터에 조건 추가하기 (0) | 2020.04.14 |
[Android] 안드로이드 - 레트로핏 errorbody() 파싱하기 (2) | 2020.04.14 |
[Android] 안드로이드 - BuildConfig 에 API 키 저장하기 (0) | 2020.04.13 |
Comments