File f = new File(fullPath);
long freeSpace = f.getFreeSpace();
위의 코드는 Android 앱에서 사용하고 있습니다. 내 응용 프로그램은 sdk-15 jar로 잘 컴파일됩니다. 나는 응용 프로그램을 실행API-jar에이 메소드와 구현이있는 경우 NoSuchMethodError 예외가 throw되는 이유
안드로이드 폰은 내가 getFreeSpace()에 대한 문서를 보았다 런타임
java.lang.NoSuchMethodError: java.io.File.getFreeSpace
에서 프로 요
나는 오류 다음 얻을이며 API-9 이후 말한다. froyo가 API-8 (이상 나와 있습니다.)과 호환되는 것으로 알고 있습니다. 그래서 플랫폼 froyo에서이 함수를 호출 할 수는 없지만 플랫폼에서 호출 할 수는 있습니다. 위의 API-8
그래서 내 질문/모호함이 응용 프로그램을 감안할 때이
완벽하게 정상적으로 컴파일, 나는 (그 기능 f.getFreeSpace 가정 것)과 그 구현은 API-15의 항아리에서 사용할 수 있습니다 내가 사용하고있는 내 응용 프로그램이 API-15의 jar 파일로 컴파일되고 항아리에 getFreeSpace() 구현이 있어야하는 이유는 무엇입니까? API-15 jar에 구현이있는 경우 플랫폼 Froyo-API-8이 문제를 일으키는 이유는 무엇입니까? ?
물건의 앞부분에서 재 설계의 일환으로 손실 된 것으로 나타납니다있다 – njzk2
그리고 froyo가 api 15에 대해 어떻게 알 것이라고 기대합니까? – njzk2
당신은 자신의 질문에 어느 정도 답을했습니다.'getFreeSpace'가 API-9에 도입되었습니다. API-8보다 오래된 API-8에서 오류가 발생합니다. 런타임시 API 레벨이 시스템에서 사용 가능한 모든 것이기 때문에 API-15에서 컴파일 한 사실은 무의미합니다. –