2012-02-16 2 views
0

그냥 지우려면 실제 장치가 아니라 에뮬레이터에 있어야합니다. 이미지를 저장하는 파일을 설정했는데 갑자기 장치가 logcat에서 장치 경고없이 남은 공간을 제공합니다. 메모리에 남아있는 공간이 있음을 알 수 있지만 어떤 이유로 더 이상 파일을 저장하지 않습니다. Im는 작은 숫자를 사용하여 이미지의 이름을 지정하므로 미친 이름 크기가 없습니다.안드로이드 - 잡는 법 java.io.IOException : 장치에 남은 공간이 없습니다.

지금은 오류가 발생하기 전에 파일에 약 80 개 정도의 이미지가 있습니다.

내가 실수로 공간 오류를 찾아 파일을 비울 수 있다고 생각하고 실제로 공간이 얼마나 충만하고 얼마나 많은 공간이 남아 있는지 확인하여이 작업을 수행해야한다는 것을 알고 있습니다. 그러나 아직 그 공간을 파악하지 못했습니다. .

나는 임

android.os.Environment.getExternalStorageDirectory(); 

하지만 내부 메모리에 데이터를 저장하여 SD 카드에 데이터를 저장하는 응용 프로그램을 말하는 것입니다이 또 다른 문제. 내 모든 권한을 설정하고 모든 것을하지만 어떤 이유로 내부보다는 내부에 저장합니다.

내 앱의 저장소에 사용할 수있는 메모리 양을 확인하는 방법과 외부에 저장하려고 할 때 내부 메모리에 저장하는 이유에 대한 정보를 알려주는 방법이 있습니다.

+0

나는 또한 사용자가 이상한 전화를 걸릴 수있는 새로운 이미지를위한 공간이 부족합니다. 응용 프로그램 카메라를 사용할 때 파일을 저장할 디렉터리로 저장하지 않습니다. 응용 프로그램에서 사용할 수있는 데이터 양에 한계가 있습니다. –

답변

1

당신은 android.od.Environment.getExternalStorageDirectory.getPath()

확인 this 아웃을 사용해야합니다.

+0

답장을 보내 주셔서 감사합니다. 모든 내부 메모리를 배치하는 이유에 대한 의견? –

+0

.getPath()를 사용하지 않았다면 내부 메모리가 기본값 일 수 있습니다. 이미지를 저장하는 앱이 있습니다. 내가하는 일은 외부 메모리에 새로운 폴더를 만들고 경로에 추가하고 이미지를 저장하는 것입니다. – gandharva

+0

쿨 아픈 샷을주고 결과로 다시 게시 :) –

관련 문제