2012-05-12 2 views
1

다음과 같이 Android DownloadManager 클래스를 사용하려고합니다. super.onCreate (savedInstanceState); setContentView (R.layout.main);Android DownloadManager 오류

Request r = new Request(Uri.parse("http://url")); 
r.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "file.ext"); // also tried all other possible ways to set up destination 
DownloadManager dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE); 
dm.enqueue(r); 

마지막 줄에 dm.enqueue(r) 응용 프로그램이 충돌합니다. 로그캣 오류 :

05-12 13:53:55.408: E/JavaBinder(6814): *** Uncaught remote exception! (Exceptions are not yet supported across processes.) 
05-12 13:53:55.408: E/JavaBinder(6814): java.lang.NoSuchMethodError: getExternalStorages 
05-12 13:53:55.408: E/JavaBinder(6814):  at com.android.providers.downloads.Helpers.isFilenameValid(Helpers.java:652) 
05-12 13:53:55.408: E/JavaBinder(6814):  at com.android.providers.downloads.DownloadProvider.checkFileUriDestination(DownloadProvider.java:613) 
05-12 13:53:55.408: E/JavaBinder(6814):  at com.android.providers.downloads.DownloadProvider.insert(DownloadProvider.java:500) 
05-12 13:53:55.408: E/JavaBinder(6814):  at android.content.ContentProvider$Transport.insert(ContentProvider.java:198) 
05-12 13:53:55.408: E/JavaBinder(6814):  at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:146) 
05-12 13:53:55.408: E/JavaBinder(6814):  at android.os.Binder.execTransact(Binder.java:324) 
05-12 13:53:55.408: E/JavaBinder(6814):  at dalvik.system.NativeStart.run(Native Method) 
05-12 13:53:55.408: W/dalvikvm(6814): threadid=7: thread exiting with uncaught exception (group=0x2aac8620) 
05-12 13:53:55.408: E/AndroidRuntime(6814): FATAL EXCEPTION: Binder Thread #1 
05-12 13:53:55.408: E/AndroidRuntime(6814): java.lang.NoSuchMethodError: getExternalStorages 
05-12 13:53:55.408: E/AndroidRuntime(6814):  at com.android.providers.downloads.Helpers.isFilenameValid(Helpers.java:652) 
05-12 13:53:55.408: E/AndroidRuntime(6814):  at com.android.providers.downloads.DownloadProvider.checkFileUriDestination(DownloadProvider.java:613) 
05-12 13:53:55.408: E/AndroidRuntime(6814):  at com.android.providers.downloads.DownloadProvider.insert(DownloadProvider.java:500) 
05-12 13:53:55.408: E/AndroidRuntime(6814):  at android.content.ContentProvider$Transport.insert(ContentProvider.java:198) 
05-12 13:53:55.408: E/AndroidRuntime(6814):  at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:146) 
05-12 13:53:55.408: E/AndroidRuntime(6814):  at android.os.Binder.execTransact(Binder.java:324) 
05-12 13:53:55.408: E/AndroidRuntime(6814):  at dalvik.system.NativeStart.run(Native Method) 

그러나 어떤 방식 으로든 대상을 지정하지 않으면 파일이 성공적으로 다운로드됩니다.

나는 무엇이 문제인지 전혀 이해할 수 없다. 제발 도와 주실 수 있나요?

+0

무엇을 실행하고 계십니까? 현재의 소스 코드에서,'isFilenameValid()'는'getExternalStorages()'메소드를 참조하지 않습니다. – CommonsWare

+0

Xperia Neo 모바일에서 실행하고 있습니다. – aplavin

+0

Xperia Neo가 원래 ROM 또는 일부 modded ROM을 실행하고 있습니까? – CommonsWare

답변

1

에뮬레이터 (또는 일부 다른 변경되지 않은 환경)에서 코드를 시험해보십시오. 알려진 working code을 사용해보십시오.

관련 문제