Java NoSuchErrorMethod,Library.jar适用于Api级别28,但不适用于更低级别
我试图在android studio的android项目中使用java库,但我得到了下一个错误日志:Java NoSuchErrorMethod,Library.jar适用于Api级别28,但不适用于更低级别,java,android,apache-commons,Java,Android,Apache Commons,我试图在android studio的android项目中使用java库,但我得到了下一个错误日志: UncaughtException: java.lang.NoSuchMethodError: No static method encodeHexString([B)Ljava/lang/String; in class Lorg/apache/commons/codec/binary/Hex; or its super classes (declaration of 'org.apache.
UncaughtException: java.lang.NoSuchMethodError: No static method encodeHexString([B)Ljava/lang/String; in class Lorg/apache/commons/codec/binary/Hex; or its super classes (declaration of 'org.apache.commons.codec.binary.Hex' appears in /system/framework/org.apache.http.legacy.boot.jar)
这是我要使用的外部库:
实现文件('libs/CoDiLibrary.jar')
在MainActivity的onCreate方法中,我执行以下操作:
String keySource=CoDi.keySource(“123456”、“3434j34h43j”、“5551234567”)代码>
以下是我的项目中的依赖项:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation files('libs/CoDiLibrary.jar')
}
要使它在任何api级别的设备上工作,我必须做哪些更改?我认为问题来自添加到gradle>>实现文件(“libs/commons-codec-1.10.jar”)的最后一个库。您可以删除它并重试吗?也许它和android自带的默认通用编解码器库有冲突。@HichemBOUSSETTA仍然不工作。我所做的是将compileSdkVersion和targetSdkVersion更改为api级别28,它适用于api级别28的设备,但在使用api级别26的设备进行测试后,出现了相同的错误。您将libs
文件夹放在哪里?请删除此实现文件('libs/CoDiLibrary.jar')
,并确保libs
应该是这样的app/libs
而不是app/src/libs
@NamNH是的,库在app中/libs@LuisAguilar我不知道哪个是你的CoDiLibrary.jar
包含的,但至少您可以在中理解相同的场景,我相信问题来自添加到gradle>>实现文件的最后一个库(“libs/commons-codec-1.10.jar”)。您可以删除它并重试吗?也许它和android自带的默认通用编解码器库有冲突。@HichemBOUSSETTA仍然不工作。我所做的是将compileSdkVersion和targetSdkVersion更改为api级别28,它适用于api级别28的设备,但在使用api级别26的设备进行测试后,出现了相同的错误。您将libs
文件夹放在哪里?请删除此实现文件('libs/CoDiLibrary.jar')
,并确保libs
应该是这样的app/libs
而不是app/src/libs
@NamNH是的,库在app中/libs@LuisAguilar我不知道哪个是你的CoDiLibrary.jar
包含的,但至少你可以理解同样的场景