java.lang.NoSuchMethodError: No interface method sort(Ljava/util/Comparator;)V in class Ljava/util/List; or its super classes (declaration of 'java.util.List' appears in /system/framework/core-libart.jar)
at com.google.zxing.qrcode.detector.FinderPatternFinder.selectBestPatterns(FinderPatternFinder.java:616)
at com.google.zxing.qrcode.detector.FinderPatternFinder.find(FinderPatternFinder.java:164)
at com.google.zxing.qrcode.detector.Detector.detect(Detector.java:81)
at com.google.zxing.qrcode.QRCodeReader.decode(QRCodeReader.java:77)
at com.google.zxing.MultiFormatReader.decodeInternal(MultiFormatReader.java:173)
at com.google.zxing.MultiFormatReader.decodeWithState(MultiFormatReader.java:87)
at com.google.zxing.client.android.DecodeHandler.decode(DecodeHandler.java:98)
at com.google.zxing.client.android.DecodeHandler.handleMessage(DecodeHandler.java:59)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at com.google.zxing.client.android.DecodeThread.run(DecodeThread.java:112)
7.0以下报错,解决方案:
使用 3.3.3 以下版本
implementation 'com.google.zxing:core:3.3.3'
如果你项目还使用了zxing-android-embedded这套库,需要设置transitive = false后,在单独依赖zxing
implementation('com.journeyapps:zxing-android-embedded:4.3.0') { transitive = false }
该博客主要讨论了一个在Android 7.0及以下版本遇到的错误:`NoSuchMethodError`,该错误发生在使用ZXing二维码读取库时。解决方案是将ZXing核心库版本降低到3.3.3,并在依赖zxing-android-embedded时设置`transitive=false`以避免冲突。这将确保在旧版Android设备上正确运行二维码解码功能。
855

被折叠的 条评论
为什么被折叠?



