2011-01-17 10 views

답변

5

외부 저장소 디렉토리에 쓸 수있는 충분한 권한이없는 것 같습니다. 나는 createTempFile이 필요한 것을 모르는 (나는 그것이 내부 저장 장치에있을 것이라고 생각하지만 모르는),하지만 난과 같이, 매니페스트에 WRITE_EXTERNAL_STORAGE 권한을 추가 제안 :

<manifest...> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
</manifest> 
+0

도움을 주셔서 감사합니다. 이 줄을 AndroidManifest.xml에 추가하여 이제는 의 두 가지 요소를 갖게되었습니다. 그러나 응용 프로그램 오류는 변경되지 않습니다. 변경 사항이 올바른지? – dev222

+4

업데이트 :이 호출에 대한 대체 서명으로 변경 : File temp = File.createTempFile ("mediaplayertmp", "dat", this.getCacheDir()); 공장! – dev222

+0

아 좋아! 당신이 그것을 알아 냈기 때문에 기쁜, 나는 거기에서 어디로 가야할지 모르겠다. – kcoppock

1

AFAIK가 java.io.tmpdir으로 구성된 기본 임시 파일 위치가 /sdcard이므로, WRITE_EXTERNAL_STORAGE 권한을 매니페스트에 추가해야합니다.

3

나는이 같은 문제가있었습니다. 내게는 문제가 발생했다. 내가 개발할 때 안드로이드 장치를 USB를 통해 내 PC에 꽂고, 다른 장치에 장착되었을 때 SD 카드가 잠겼다. 일단 장치의 플러그를 뽑으면 정상적으로 작동합니다. 또한 장치를 꽂은 상태에서 SD 카드를 마운트하지 않도록 장치를 알릴 수도 있습니다.

관련 문제