마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

Context.MODE_WORLD_WRITEABLE, READALBE 질문드립니다

0 추천

파일 모드에 Context.MODE_WORLD_WRITEABLE 가 사실 쓰기와 읽기 둘 다 가능하다는 얘기를 들었습니다.

이게 사실이라면 Context.MODE_WORLD_WRITEABLE Context.MODE_WORLD_READALBE 두가지로 나눈

이유가 왜인지 궁금합니다.

초입보문 님이 2015년 3월 11일 질문

2개의 답변

+1 추천
읽기만 할꺼냐

읽기도하고 쓰기까지 할꺼냐의 권한 차이죠.

 

값 참조만 한다면 쓰기권한은 필요가 없으니까요.
이라슈 (8,770 포인트) 님이 2015년 3월 12일 답변
+1 추천

질문하신 상수에 대한 설명을 API 문서에서 찾아 보니 다음과 같은 문구가 있군요

There are no guarantees that this access mode will remain on a file. File creation mode: allow all other applications to have read access to the created file.

 

나눈 이유는 당연히 read 속성과 write 속성을 분리하기 위해서 만든 것일테지만,

문서상에도 나와있듯이 해당 속성이 파일에 유지되는 것은 보장하지 않느다고 합니다.

그렇기 때문에 writeable로 만들어도 readable도 되는것이고 반대의 경우도 가능한 것입니다.

 

추가로 API Level 17 부터 보안상의 이유로 두 속성 다 deprecated 되었고

ContentProvider나 BroadcastReceiver나 Service를 이용하여 interaction 할 것을 권장하고 있습니다.

This constant was deprecated in API level 17.
Creating world-writable files is very dangerous, and likely to cause security holes in applications. It is strongly discouraged; instead, applications should use more formal mechanism for interactions such as ContentProvider,BroadcastReceiver, and Service

 

원문 : http://developer.android.com/reference/android/content/Context.html#MODE_WORLD_READABLE

Gradler (109,780 포인트) 님이 2015년 3월 12일 답변
...