2012-11-19 2 views
0

데이터를 저장하기 위해 path="/sdcard/myapp"을 사용했습니다. 그러나 컴파일러 대신 하드 코드의 Environment.getExternalStorageDirectory()를 사용하는 날을 제안 "/sdcard"Android : "/ sdcard"와 Environment.getExternalStorageDirectory()의 차이점은 무엇입니까?

내 질문은 : 내가 이렇게하면 myapp와의 사용자가 자신의 데이터를 손실 할 것이다 그들은 true의 경우, 어떻게 AND를 업데이트 할 때
?

+0

물리적 경로가 여러 가지 이유로 바뀔 수 있기 때문에 캡슐화 일 뿐이라고 생각하지만 메소드 이름은 동일하게 유지됩니다. 나는 Environment.getExternalStorageDirectory()도 선호한다. –

답변

0

모든 장치에 sdcard가있는 것은 아닙니다. 일부는 태블릿과 같은 저장 용량을 갖추고 있습니다. 따라서 외부 저장소 디렉토리를 사용해야합니다.

디렉토리가/sdcard에 매핑되지만 다른 디렉토리/mount 일 수 있습니다.

질문에 대답하십시오 : 아니오, 데이터를 잃어 버리지 않습니다.

2

때때로 특정 장치 제조업체가 외부 저장소에 대해 다른 경로를 사용할 수 있습니다. 일부 장치에는 외부 저장소가 전혀 없을 수도 있으며 온보드 저장소의 일부를 외부 저장소로 간주 할 수 있습니다. 다른 시간에 "/ sdcard"가 다른 저장 영역에도 매핑 될 수 있습니다.

가 그래서 일반적으로 다른 한편으로 "/sdcard".

를 사용하는 것이 현명 간주되지 않습니다, Environment.getExternalStorageDirectory()는 시스템 API이며, 항상 모든 기기 제조업체에 의해 지원됩니다. 특정 장치에 대한 외부 저장소로 사용될 저장소 영역에 항상 올바르게 매핑됩니다. 따라서 외부 저장소 디렉토리에 대한 참조가 필요할 때마다이 옵션을 안전하게 사용할 수 있습니다.

관련 문제