본문 바로가기

나의 플랫폼/안드로이드

[Android] 외장 하드 접근의 큰 착각.

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

혹시, 저 같이 생각 하는 사람들이 있을까 해서 이렇게 글을 적습니다.


안드로이드 폰에는 외장 SD card를 지원하는 폰이 있고 지원하지 않는 폰이 있습니다

대표적으로 레퍼런스 폰들은 외장 SD card를 지원하고 있지 않죠.


만약 기능상으로 외장 SD card에 접근을 할 때 어떤 함수를 써야하나~ 하면서 API를 뒤집니다.

그러면 눈에 띄는 한가지 함수가 보이죠!!

Environment.getExternalStorageDirectory()

위 함수명을 보는 순간~~ 오! 할렐루야~~ 안드로이드는 API가 참 잘 되어 있어~ 하면서~

바로 이 함수를 호출합니다. 위 Directory를 출력하게 되면

"/mnt/sdcard" 로 출력이 되죠~^^ 야르~~ 오예~~~ 이게 외장 SD card 경로 구나 하면서

이 경로에 여러가지를 붙여서 파일 입출력을 합니다.


하지만! 손님... 여기서 이러시면 안됩니다.

위 경로는 외장 SD card 경로가 아닌 내장 SD card 경로 입니다.

즉 우리가 넣다 뺏다 할 수 있는~ 요~~물 인 외장 SD card의 경로가 아니라는 겁니다.


안드로이드 폰은 기본적으로 외장 SD card를 지원하지 않기 때문에,

기본 API에는 이에 대한 대응이 되어 있지 않습니다.

결국!!! 조건에 맞춰서 직접 코딩을 해야하는 수 밖에 없지요.!

http://stackoverflow.com/questions/5694933/find-an-external-sd-card-location


혹시 넣었다 뺐다 할수 있는 외장 SD card로 파일 입출력 하시는 분들은~

직접 대응 폰의 마운트된 외장 SD card 경로를 파악하고 그에 맞춰서 코딩을 진행해야겠습니다.

저두... 엄청난 착각을 했네요.


위 내용에 잘못된 내용이나 고쳐야 할 사항이 있으시면 댓글 부탁드립니다.

그럼 오늘도 즐코딩!








'나의 플랫폼 > 안드로이드' 카테고리의 다른 글

[Android] InputFilter  (0) 2013.07.08
notification  (0) 2013.07.04
[Android] 실시간 GPS 사용  (2) 2013.06.14
[ JAVA ] try catch finally 사용 시 문제점.  (4) 2013.04.16
[ Android ] htons  (0) 2013.01.28