안드로이드 어플에서 외부 USB 메모리, SD카드 쓰기 안될때 해결책
2013.07.18 14:42
물론 루트 권한이 아닌 어플에서,
외장 SD카드나 USB OTG 로 외부 USB 메모리나 외장하드 연결했을 경우 쓰기 권한을 얻지 못할 경우 해결책입니다.
펌웨어를 여러가지 테스트해보다가 나타난 경우인데, 일부 펌웨어 버전에서 외부 OTG USB 메모리나 외부 SDCARD에 쓰기 권한을 얻지 못해 FTP 다운로드를 못하는 경우가 있더군요.
루트권한을 이용하는 루트 익스플로러 등은 이러한 문제가 없습니다만, 일반적인 어플이 루트 권한을 쓰지 않으니까요.
이유는 마운트한 SDCARD나 USB 메모리의 권한이 잘못 설정되어 있어 나타나는 문제였고,
간단히 해결하는 방법은 다음과 같습니다.
링크에 있는 해결책이 쉬운 방법인데,
요약하면,
첫번째 방법 (루팅한 기기용)
루트권한을 쓸 수 있는 루트 익스플로러를 이용하여
/system/etc/permissions 파일을 편집하여
WRITE_EXTERNAL_STORAGE 항목의 그룹을 media_rw 로 설정해 주시면 웬만하면 해결될 겁니다.
다른 그룹으로 설정하고 싶으시면 원하는 다른 그룹으로 맞춰 주셔도 되고요.
두번째 방법 (루팅안한 기기용)
최소한 리커버리는 동작시킬 수 있어야 합니다.
위/system/etc/permissions 파일을 빼내서, PC등을 이용하여 권한 편집을 한 다음에
리커버리 이용해서 설치 파일 만들고 덮어써 버리면 되겠습니다.
리커버리 설치파일 만드는 방법은 따로 설명드리지 않겠습니다.
기존 리커버리 형태의 설치 파일 한번 뜯어 보시면 쉽게 아실 수 있는 내용이기에 말이죠..