2012-04-29 73 views
2

不確定爲什麼會出現這種情況,但此行的代碼崩潰我的應用程序在調試或運行模式:MultipartEntity崩潰我的應用程序

MultipartEntity multipartEntity = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE); 

是否有權限或我做錯了通過使用一些其他的事情這個?

我正在爲Android 2.1構建並使用apache-mime4j-dom-0.7.2.jar和httpmime-4.1.3.jar。

+0

後堆棧跟蹤? –

+1

04-29 14:43:54.434:E/AndroidRuntime(3329):java.lang.NoClassDefFoundError:org/apache/http/entity/mime/MultipartEntity 04-29 14:43:54.434:E/AndroidRuntime(3329) :\t at com.somecompany.someapp.SomeAppActivity.uploadPhoto(SomeActivity.java:496) –

+0

我有這個引用,這就是爲什麼我很困惑。代碼編譯等,但總是在這條線上崩潰,沒有從Try/Catch捕獲異常。 –

回答

9

這只是一個猜測,但我認爲你的問題與新的ADT版本有關。從ADT 17開始,需要將jar放入libs文件夾中,否則它們不會與apk一起打包。

因此,無論是把它們放到libs或去「配置建立路徑..」 - >「訂單和導出」,並點擊你的罐子旁邊的複選框。

+0

+1感謝解釋 –

+0

這工作對我來說,非常感謝 – user462990

2

即使我的庫已經正確放置在正確的文件夾中,我也有這個完全相同的問題。編譯很好,一切。

我的解決方案是更新我的httpmime jar到4.2.3(我以前的版本是4.0)。之後,一切工作在應用程序中。

+0

更新至4.2.5,仍然沒有運氣:( –

0

我有這個完全相同的問題。我的庫放置得很好。根據需要,Java版本是1.6。仍然有錯誤。 因此將httpmime升級到4.2.5,然後降級到4.2.3。仍然沒有運氣。

當將jar添加到構建路徑(屬性> Java構建路徑),然後在訂單和導出選項卡上勾選罐子時,我的問題就解決了。

這不是官方的方式。但是,這是它爲我工作的方式:

的minSdkVersion = 「7」 targetSdkVersion = 「17」

ADT建立v22.0.0-675183 平臺工具17個

Windows 7專業版64位