inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

코틀린 기반 안드로이드 앱개발 심화 2단계

파일 입출력

안드로이 Q에서 Download폴더에 파일 어떻게 읽고/쓰나요?

2611

ch1124.ki

작성한 질문수 14

0

안드로이 Q에서 Download폴더에 파일 어떻게 읽고/쓰나요?

Android Q에서 저장은 아래와 같이 해서 되기는 하나 덮어쓰기는 안되고

val resolver =  contentResolver
val contentValues = ContentValues().apply {
put(MediaStore.MediaColumns.DISPLAY_NAME, "sdFile.dat")
put(MediaStore.MediaColumns.
MIME_TYPE, "plain/text")
put(MediaStore.MediaColumns.
RELATIVE_PATH, "Download")
}

val uri = resolver.insert(MediaStore.Downloads.EXTERNAL_CONTENT_URI, contentValues)

var output = resolver.openOutputStream(uri!!)
var dos = DataOutputStream(output)
dos.writeInt(
200)
dos.writeDouble(
55.55)
dos.writeUTF(
"반갑습니다.")
dos.flush()
dos.close()
textView.
text = "저장 완료"

읽기는 에러가 발생합니다.
에러 메시지 :
open failed: ENOENT (No such file or directory)
val resolver =  contentResolver
val contentValues = ContentValues().apply {
put(MediaStore.MediaColumns.DISPLAY_NAME, "sdFile.dat")
put(MediaStore.MediaColumns.MIME_TYPE, "plain/text")
put(MediaStore.MediaColumns.RELATIVE_PATH, "Download")
}

val uri = resolver.insert(MediaStore.Downloads.EXTERNAL_CONTENT_URI, contentValues)

var input = resolver.openInputStream(uri!!)
var dis = DataInputStream(input)
var value1 = dis.readInt()
var value2 = dis.readDouble()
var value3 = dis.readUTF()
dis.close()

textView.text = "value1 : ${value1}\n"
textView.append("value2 : ${value2}\n")
textView.append("value3 : ${value3}\n")

kotlin android

답변 2

1

소프트캠퍼스 윤재성

안드로이드 10 부터 외부 저장소에 대한 정책이 변경되어 코드가 달라졌습니다. 본 강좌는 안드로이드 8버전을 타겟으로 만들어졌기 때문에 이 부분에 대해 아직 갱신이 되어 있지 않은데요 조만간 업데이트를 할 예정입니다. 

https://developer.android.com/training/data-storage/files/external-scoped?hl=ko

위의 링크는 안드로이드 공식 링크인데요 이 부분을 참고해주시기 바랍니다.

0

ch1124.ki

이 부분 보긴 했는데 메뉴얼과 샘플만 보고 이해하기 까지 내공이 없어서 

강사님 강의 기다리고 있습니다. 

kafka 이벤트 발행 실패 시 at-least-once를 보장하는 방법이 궁금합니다.

1

35

1

domain에 @Entity 와 Repository를 함께 둔 이유가 궁금합니다

1

28

1

혹시 강의 내용하면서 실습했던 것을 개인 깃에다 올려도 될까요?

0

14

1

안드로이드 조직 계정 수익 인증 관련

0

32

2

아무도 모르게 책 내시면 모르실 줄 알고!!

1

42

2

Jib 이미지 빌드에서 docker credential 관련으로 이슈가 있다면

1

58

1

스크립트에 대해 질문 있습니다.

1

53

1

같은 사용자가 연속된 중복 호출할 경우 어떻게 되는지 궁금합니다!

2

58

1

AdMob 계정 승인이 1개월 이상 지연되고 있습니다. 앱 검토와 순서가 어떻게 되는 건가요

0

86

2

sqlite 데이터 입력질문

0

228

1

서비스 21분 강의 질문입니다.

0

347

1

안드로이 Pie 부터 설정 추가

0

247

0

톰캣 에러가 난다면..

0

3125

1

sqlite app이 실행 되어 있지 않아도 되나요?

0

410

4

이 강의 녹음은 소리가 너무 작습니다.

0

297

3

신규 강의 에서는 Room 추가 부탁 드립니다.

0

182

0

Dialog 버튼 순서 변경 문의

0

311

1

Fragment에서 activity 사용이 바로 안되네요..

0

248

0

Fragment에서는 왜 컨트롤 바로 접근이 안되나요?

0

339

1

안드로이 api level 28부터는 에러납니다.

0

333

0

권한관련 질문

0

254

1

content provider 사용 오류

0

531

4

Handler 관련 질문입니다.

0

269

0

강의에서 필요한 부분만 먼저 들으면서 잠금화면을

0

253

1