본문 바로가기

소프트웨어/Android/Java/Ndk

안드로이드] 갤노트 file path설정시 유의점

프로젝트를 진행하면서 타겟보드는 갤노트였는데 개발을 htc evo에서 진행하였다.

 

 

파일 path건드리는 부분을 기본값으로

 

String Path= "/sdcard/test"

 

로 잡고 진행하였다.

 

HTC에서는 아무 이상없이 잘 돌아갔으나, 갤노트에다가 프로그램을 올린순간 NullPointerException이 뻥~터져버렸다.

 

왜그런고...생각하답보니 프로그램을 올린 갤노트에 sd카드가 없는것이다.

 

그래서 앗차! 하면서

String state = Environment.getExternalStorageState();// Log.d("mstag",""+state);
  boolean isSDcard = state.equals(Environment.MEDIA_MOUNTED);//sd카드 여부 검사

 

위와 같이 테스트를 진행하였다. 이상하게도 분명히 sd카드가 없는데 로그에는 계속 mounted로 찍히는것이 아닌가.

???

 

그래서 htc기기에서 sd카드를 빼고 로그를 찍어보았더니 제대로 unmounted가 나온느것이 아닌가!!!?!?!?!?

 

 

그래서 갤노트의 폴더구성을 살펴보았더니 sd카드가 없는데도 /mnt/sdcard/ 에 어플리케이션들이 깔리고 있었다.

(왜그런지는 잘 모르겠다.)

 

그래서 path설정을

/sdcard/test 에서

/mnt/sdcard/test로 바꾸었더니

갤노트와 htc기기 모두 잘 돌아가는것을 확인하였다.