Плагин Flutter java .lang.NoClassDefFoundError: Неудачное разрешение ошибки для библиотеки aar - PullRequest
0 голосов
/ 18 июня 2020

Я создал плагин, который представляет собой просто оболочку для собственного sdk для android и ios. Для Android у меня есть AR-файл, который я импортировал в плагин. Я могу получить доступ к классу sdk в файле подключаемого модуля в среде IDE, но когда я запускаю пример приложения подключаемого модуля, приложение вылетает с ошибкой, поскольку class def не найден для файлов sdk. Я провел анализ apk, в нем была jar классов, которые содержали эти файлы sdk. Ниже представлены логи.

[ERROR:flutter/shell/platform/android/platform_view_android_jni.cc(39)] java.lang.NoClassDefFoundError: Failed resolution of: Lcom/xyz/xyzapp/sdk/xyzSDK;
E/flutter ( 6844):  at com.rajeevjaiswal.xyz.xyzPlugin.onMethodCall(xyzPlugin.java:72)
E/flutter ( 6844):  at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:231)
E/flutter ( 6844):  at io.flutter.embedding.engine.dart.DartMessenger.handleMessageFromDart(DartMessenger.java:93)
E/flutter ( 6844):  at io.flutter.embedding.engine.FlutterJNI.handlePlatformMessage(FlutterJNI.java:642)
E/flutter ( 6844):  at android.os.MessageQueue.nativePollOnce(Native Method)
E/flutter ( 6844):  at android.os.MessageQueue.next(MessageQueue.java:325)
E/flutter ( 6844):  at android.os.Looper.loop(Looper.java:142)
E/flutter ( 6844):  at android.app.ActivityThread.main(ActivityThread.java:6494)
E/flutter ( 6844):  at java.lang.reflect.Method.invoke(Native Method)
E/flutter ( 6844):  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
E/flutter ( 6844):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
E/flutter ( 6844): Caused by: java.lang.ClassNotFoundException: Didn't find class "com.xyz.xyzapp.sdk.xyzSDK" on path: DexPathList[[zip file "/data/app/com.rajeevjaiswal.xyz_example-6n39Rpe9t5iTFKT4PxjmgA==/base.apk"],nativeLibraryDirectories=[/data/app/com.rajeevjaiswal.xyz_example-6n39Rpe9t5iTFKT4PxjmgA==/lib/x86, /data/app/com.rajeevjaiswal.xyz_example-6n39Rpe9t5iTFKT4PxjmgA==/base.apk!/lib/x86, /system/lib, /vendor/lib]]
E/flutter ( 6844):  at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:125)
E/flutter ( 6844):  at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
E/flutter ( 6844):  at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
E/flutter ( 6844):  ... 11 more
E/flutter ( 6844):
F/flutter ( 6844): [FATAL:flutter/shell/platform/android/platform_view_android_jni.cc(76)] Check failed: CheckException(env).
F/libc    ( 6844): Fatal signal 6 (SIGABRT), code -6 in tid 6844 (flutter_example), pid 6844 (flutter_example)
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Build fingerprint: 'google/sdk_gphone_x86/generic_x86:8.1.0/OSM1.180201.007/4586646:user/release-keys'
Revision: '0'
ABI: 'x86'
pid: 6844, tid: 6844, name: flutter_example  >>> com.rajeevjaiswal.xyz_example <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
Abort message: '[FATAL:flutter/shell/platform/android/platform_view_android_jni.cc(76)] Check failed: CheckException(env).
'
eax 00000000  ebx 00001abc  ecx 00001abc  edx 00000006
esi a94aa6c0  edi 00001abc
xcs 00000073  xds 0000007b  xes 0000007b  xfs 0000003b  xss 0000007b
eip adcccac4  ebp bfa9f308  esp bfa9f298  flags 00200286
backtrace:
#00 pc 00000ac4  [vdso:adccc000] (__kernel_vsyscall+16)
#01 pc 0001edf8  /system/lib/libc.so (syscall+40)
#02 pc 0001f073  /system/lib/libc.so (abort+115)
#03 pc 0115a7f7  /data/app/com.rajeevjaiswal.xyz_example-6n39Rpe9t5iTFKT4PxjmgA==/lib/x86/libflutter.so (offset 0x113f000)
#04 pc 011485fb  /data/app/com.rajeevjaiswal.xyz_example-6n39Rpe9t5iTFKT4PxjmgA==/lib/x86/libflutter.so (offset 0x113f000)
#05 pc 01146390  /data/app/com.rajeevjaiswal.xyz_example-6n39Rpe9t5iTFKT4PxjmgA==/lib/x86/libflutter.so (offset 0x113f000)
#06 pc 011abd29  /data/app/com.rajeevjaiswal.xyz_example-6n39Rpe9t5iTFKT4PxjmgA==/lib/x86/libflutter.so (offset 0x113f000)
#07 pc 01158efd  /data/app/com.rajeevjaiswal.xyz_example-6n39Rpe9t5iTFKT4PxjmgA==/lib/x86/libflutter.so (offset 0x113f000)
#08 pc 0115b549  /data/app/com.rajeevjaiswal.xyz_example-6n39Rpe9t5iTFKT4PxjmgA==/lib/x86/libflutter.so (offset 0x113f000)
#09 pc 0115b48e  /data/app/com.rajeevjaiswal.xyz_example-6n39Rpe9t5iTFKT4PxjmgA==/lib/x86/libflutter.so (offset 0x113f000)
#10 pc 01161b40  /data/app/com.rajeevjaiswal.xyz_example-6n39Rpe9t5iTFKT4PxjmgA==/lib/x86/libflutter.so (offset 0x113f000)
#11 pc 01161b6e  /data/app/com.rajeevjaiswal.xyz_example-6n39Rpe9t5iTFKT4PxjmgA==/lib/x86/libflutter.so (offset 0x113f000)
#12 pc 00014af7  /system/lib/libutils.so (android::SimpleLooperCallback::handleEvent(int, int, void*)+39)
#13 pc 00015936  /system/lib/libutils.so (android::Looper::pollInner(int)+982)
#14 pc 000154d6  /system/lib/libutils.so (android::Looper::pollOnce(int, int*, int*, void**)+118)
#15 pc 000e25cb  /system/lib/libandroid_runtime.so (android::android_os_MessageQueue_nativePollOnce(_JNIEnv*, _jobject*, long long, int)+59)
#16 pc 007d5428  /system/framework/x86/boot-framework.oat (offset 0x606000) (android.app.NativeActivity.onWindowFocusChangedNative [DEDUPED]+136)
#17 pc 00642262  /system/lib/libart.so (art_quick_invoke_stub+338)
#18 pc 001160cf  /system/lib/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+223)
#19 pc 0032153f  /system/lib/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+335)
#20 pc 0031a7a4  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+836)
#21 pc 0062942c  /system/lib/libart.so (MterpInvokeDirect+428)
#22 pc 006333a1  /system/lib/libart.so (artMterpAsmInstructionStart+14369)
#23 pc 002f3a2b  /system/lib/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+539)
#24 pc 002fa2e7  /system/lib/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*, art::JValue*)+231)
#25 pc 0031a78a  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+810)
#26 pc 00627e14  /system/lib/libart.so (MterpInvokeVirtual+756)
#27 pc 006332a1  /system/lib/libart.so (artMterpAsmInstructionStart+14113)
#28 pc 002f3a2b  /system/lib/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+539)
#29 pc 002fa2e7  /system/lib/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*, art::JValue*)+231)
#30 pc 0031a78a  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+810)
#31 pc 0062964a  /system/lib/libart.so (MterpInvokeStatic+282)
#32 pc 00633421  /system/lib/libart.so (artMterpAsmInstructionStart+14497)
#33 pc 002f3a2b  /system/lib/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+539)
#34 pc 002fa1cb  /system/lib/libart.so (art::interpreter::EnterInterpreterFromEntryPoint(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*)+139)
#35 pc 006179bf  /system/lib/libart.so (artQuickToInterpreterBridge+1311)
#36 pc 0064832d  /system/lib/libart.so (art_quick_to_interpreter_bridge+77)
#37 pc 00642432  /system/lib/libart.so (art_quick_invoke_static_stub+418)
#38 pc 001160f9  /system/lib/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+265)
#39 pc 00544d6b  /system/lib/libart.so (art::InvokeWithArgArray(art::ScopedObjectAccessAlreadyRunnable const&, art::ArtMethod*, art::ArgArray*, art::JValue*, char const*)+91)
#40 pc 00546f65  /system/lib/libart.so (art::InvokeMethod(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jobject*, _jobject*, unsigned int)+1573)
#41 pc 004adfb3  /system/lib/libart.so (art::Method_invoke(_JNIEnv*, _jobject*, _jobject*, _jobject*)+83)
#42 pc 002677a8  /system/framework/x86/boot.oat (offset 0x1db000) (java.lang.Class.getDeclaredMethodInternal [DEDUPED]+168)
#43 pc 00642262  /system/lib/libart.so (art_quick_invoke_stub+338)
#44 pc 001160cf  /system/lib/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+223)
#45 pc 0032153f  /system/lib/libart.so (art::interpreter::ArtInterpreterToCompiledCodeBridge(art::Thread*, art::ArtMethod*, art::ShadowFrame*, unsigned short, art::JValue*)+335)
#46 pc 0031a7a4  /system/lib/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+836)
#47 pc 00627e14  /system/lib/libart.so (MterpInvokeVirtual+756)
#48 pc 006332a1  /system/lib/libart.so (artMterpAsmInstructionStart+14113)
#49 pc 002f3a2b  /system/lib/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+539)
#50 pc 002fa1cb  /system/lib/libart.so (art::interpreter::EnterInterpreterFromEntryPoint(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*)+139)
#51 pc 006179bf  /system/lib/libart.so (artQuickToInterpreterBridge+1311)
#52 pc 0064832d  /system/lib/libart.so (art_quick_to_interpreter_bridge+77)
#53 pc 0160d52d  /system/framework/x86/boot-framework.oat (offset 0x606000) (com.android.internal.os.ZygoteInit.main+2669)
#54 pc 00642432  /system/lib/libart.so (art_quick_invoke_static_stub+418)
#55 pc 001160f9  /system/lib/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+265)
#56 pc 00544d6b  /system/lib/libart.so (art::InvokeWithArgArray(art::ScopedObjectAccessAlreadyRunnable const&, art::ArtMethod*, art::ArgArray*, art::JValue*, char const*)+91)
#57 pc 00544b3c  /system/lib/libart.so (art::InvokeWithVarArgs(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, char*)+764)
#58 pc 0041b39b  /system/lib/libart.so (art::JNI::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, char*)+907)
#59 pc 001521f6  /system/lib/libart.so (art::CheckJNI::CallMethodV(char const*, _JNIEnv*, _jobject*, _jclass*, _jmethodID*, char*, art::Primitive::Type, art::InvokeType)+2950)
#60 pc 0014036b  /system/lib/libart.so (art::CheckJNI::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, char*)+75)
#61 pc 0007497e  /system/lib/libandroid_runtime.so (_JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...)+62)
#62 pc 000783e8  /system/lib/libandroid_runtime.so (android::AndroidRuntime::start(char const*, android::Vector<android::String8> const&, bool)+824)
#63 pc 00001db2  /system/bin/app_process32 (main+1602)
...