아하
검색 이미지
생활꿀팁 이미지
생활꿀팁생활
생활꿀팁 이미지
생활꿀팁생활
하얀솔개64
하얀솔개6419.07.19

안드로이드 시스템 파일 Chooser에서 파일을 불러올 때 이상한 path가 받아짐

이런 화면에서 파일을 선택하면 제대로 되어야 하는데, 파일을 불러오지 못해서 로그를 확인해 보니 다음과 같은 path가 받아지고 있었습니다.

/document/raw:/storage/emulated/0/Download/blogplannerdatakiir12_20190717003196.txt (No such file or directory)

/document/raw: 이 태그는 도대체 무엇이길래 계속 이렇게 받아와지는지 궁금합니다. 또한, 제 휴대폰만 어플리케이션을 사용하는게 아니기 때문에 split해서 자른다고 해도 근본적인 해결책이 되지 않습니다. 왜 이럴까요? 코드 일부를 첨부합니다.

// startActivityForResult 일부 코드 backup_from_file.setOnClickListener { if (ContextCompat.checkSelfPermission(this, permission.READ_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED) { Toast.makeText(applicationContext, getString(R.string.notify_backup_open), Toast.LENGTH_LONG).show() startActivityForResult( Intent.createChooser( Intent(Intent.ACTION_GET_CONTENT) .setType("text/plain"), getString(R.string.open_backup)), // onActivityResult의 일부 override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { super.onActivityResult(requestCode, resultCode, data) when (requestCode) { PICK_DATA -> { if (resultCode == RESULT_OK) { try { try { val dataUri = data!!.data Log.d(TAG, dataUri!!.path)

55글자 더 채워주세요.
답변의 개수
1개의 답변이 있어요!
  • Data URI입니다. 말 그대로 Data URI일 뿐이지 반드시 파일 경로인 것은 아닙니다.
    파일의 경로를 표현하는 Data URI도 있고 이미지를 통째로 Data URI로 나타낼 수도 있습니다.

    Data URI에서 파일의 경로를 알 수 있는 방법을 코틀린에 맞게 바꿔서 사용하시면 될 듯 합니다.