2014-09-19 101 views
0

我是Android開發新手,我使用Android Studio 0.8.9和Gradle版本1.12。 我想使用共享編解碼器庫,特別是Base64編碼類調用方法Commons Codec Library問題Android Studio

encodeBase64URLSafe 
Android中

我有下載最新的公地編解碼器1.9.jar文件,將其加入到創建「庫」文件夾Studio和隨後的build.gradle中,我增加了以下內容:

dependencies { 
compile 'com.android.support:support-v4:+' 
compile files('libs/commons-codec-1.9.jar') 
compile files('libs/guava-18.0.jar') 
} 

當我運行我的代碼,應用程序崩潰,並且我收到以下錯誤消息:

java.lang.NoSuchMethodError: Lorg/apache/commons/codec/binary/Base64;.encodeBase64URLSafe 

我不知道發生了什麼事。我相信這與Android Studio不知道我添加的commons-code jar庫的路徑有關。但是,它編譯沒有任何問題。

如果任何人都可以提供任何見解,它將真正被讚賞。

謝謝!在共享代碼庫1.4版加入

+0

看看這個SO線程:http://stackoverflow.com/questions/2047706/apache-commons-codec-with-android-could-not-find-method – alpinescrambler 2014-09-19 21:38:24

+0

@alpinescrambler它沒有幫助我解決我的問題,它提出了一個解決方法。我需要這種方法。不管怎麼說,還是要謝謝你! – Teddy13 2014-09-20 03:47:47

回答

0

Base64#encodeBase64URLSafe方法。 Android運行時將始終使用此類的1.3版本,該版本不包含此方法 - 因此是NoSuchMethodError異常。

解決方法是重新打包Commons Codec庫。
查看我的回答here,其中包括解決此問題的步驟。