Closed AliKhoshraftar closed 4 years ago
Consuming a local aar, without a pom.xml, you can't resolve transitive dependencies. You will have to include them manually. That said, we advice you to use official releases.
This issue is duplicate and I solved it in #14428
I build release aar with DISTRIBUTE tutorial and it successfully built. but when i import that aar in a sample project it fail to load mapbox with some different errors like soLoader with this error message :
java.lang.NoClassDefFoundError: Failed resolution of: Lcom/facebook/soloader/SoLoader; at com.mapbox.mapboxsdk.module.loader.LibraryLoaderProviderImpl$SoLibraryLoader.load(LibraryLoaderProviderImpl.java:41) at com.mapbox.mapboxsdk.LibraryLoader.load(LibraryLoader.java:43) at com.mapbox.mapboxsdk.net.NativeConnectivityListener.<clinit>(NativeConnectivityListener.java:13) at com.mapbox.mapboxsdk.net.ConnectivityReceiver.instance(ConnectivityReceiver.java:43) at com.mapbox.mapboxsdk.Mapbox.getInstance(Mapbox.java:59) at com.example.sdkv4test.App.onCreate(App.java:11) at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1119) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5877) at android.app.ActivityThread.-wrap1(Unknown Source:0) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1690) at android.os.Handler.dispatchMessage(Handler.java:105) at android.os.Looper.loop(Looper.java:173) at android.app.ActivityThread.main(ActivityThread.java:6698) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:782) Caused by: java.lang.ClassNotFoundException: Didn't find class "com.facebook.soloader.SoLoader" on path: DexPathList[[zip file "/data/app/com.example.sdkv4test-zzpD2O1G2YoLSmxXGx2kXQ==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.sdkv4test-zzpD2O1G2YoLSmxXGx2kXQ==/lib/arm64, /system/lib64, /system/vendor/lib64]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:93) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) at com.mapbox.mapboxsdk.module.loader.LibraryLoaderProviderImpl$SoLibraryLoader.load(LibraryLoaderProviderImpl.java:41) at com.mapbox.mapboxsdk.LibraryLoader.load(LibraryLoader.java:43) at com.mapbox.mapboxsdk.net.NativeConnectivityListener.<clinit>(NativeConnectivityListener.java:13) at com.mapbox.mapboxsdk.net.ConnectivityReceiver.instance(ConnectivityReceiver.java:43) at com.mapbox.mapboxsdk.Mapbox.getInstance(Mapbox.java:59) at com.example.sdkv4test.App.onCreate(App.java:11) at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1119) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5877) at android.app.ActivityThread.-wrap1(Unknown Source:0) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1690) at android.os.Handler.dispatchMessage(Handler.java:105) at android.os.Looper.loop(Looper.java:173) at android.app.ActivityThread.main(ActivityThread.java:6698) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:782)
and after implement Soloader dependency it failed with another error like :
2019-11-30 14:58:09.452 7742-7742/? E/SoLoader: couldn't find DSO to load: libmapbox-gl.so 2019-11-30 14:58:09.456 7742-7742/? E/Mbgl-LibraryLoader: Failed to load native shared library. java.lang.UnsatisfiedLinkError: couldn't find DSO to load: libmapbox-gl.so at com.facebook.soloader.SoLoader.doLoadLibraryBySoName(SoLoader.java:774) at com.facebook.soloader.SoLoader.loadLibraryBySoName(SoLoader.java:627) at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:565) at com.facebook.soloader.SoLoader.loadLibrary(SoLoader.java:513) at com.mapbox.mapboxsdk.module.loader.LibraryLoaderProviderImpl$SoLibraryLoader.load(LibraryLoaderProviderImpl.java:42) at com.mapbox.mapboxsdk.LibraryLoader.load(LibraryLoader.java:43) at com.mapbox.mapboxsdk.net.NativeConnectivityListener.<clinit>(NativeConnectivityListener.java:13) at com.mapbox.mapboxsdk.net.ConnectivityReceiver.instance(ConnectivityReceiver.java:43) at com.mapbox.mapboxsdk.Mapbox.getInstance(Mapbox.java:59) at com.example.sdkv4test.App.onCreate(App.java:11) at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1119) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5877) at android.app.ActivityThread.-wrap1(Unknown Source:0) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1690) at android.os.Handler.dispatchMessage(Handler.java:105) at android.os.Looper.loop(Looper.java:173) at android.app.ActivityThread.main(ActivityThread.java:6698) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:782) 2019-11-30 14:58:09.457 7742-7742/? E/zygote64: No implementation found for void com.mapbox.mapboxsdk.net.NativeConnectivityListener.initialize() (tried Java_com_mapbox_mapboxsdk_net_NativeConnectivityListener_initialize and Java_com_mapbox_mapboxsdk_net_NativeConnectivityListener_initialize__) 2019-11-30 14:58:09.459 7742-7742/? E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.sdkv4test, PID: 7742 java.lang.UnsatisfiedLinkError: No implementation found for void com.mapbox.mapboxsdk.net.NativeConnectivityListener.initialize() (tried Java_com_mapbox_mapboxsdk_net_NativeConnectivityListener_initialize and Java_com_mapbox_mapboxsdk_net_NativeConnectivityListener_initialize__) at com.mapbox.mapboxsdk.net.NativeConnectivityListener.initialize(Native Method) at com.mapbox.mapboxsdk.net.NativeConnectivityListener.<init>(NativeConnectivityListener.java:27) at com.mapbox.mapboxsdk.net.ConnectivityReceiver.instance(ConnectivityReceiver.java:43) at com.mapbox.mapboxsdk.Mapbox.getInstance(Mapbox.java:59) at com.example.sdkv4test.App.onCreate(App.java:11) at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1119) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5877) at android.app.ActivityThread.-wrap1(Unknown Source:0) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1690) at android.os.Handler.dispatchMessage(Handler.java:105) at android.os.Looper.loop(Looper.java:173) at android.app.ActivityThread.main(ActivityThread.java:6698) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:782)
So i don't know what is happening and why aar not working well. As i tried it wtih bintray and publish a version it failed with some another errors like telemetry or gestures. how it is possible to bundle all of them and make no need to re import that dependencies anymore ?
Steps to reproduce
Expected behavior
Initialize map without problem.
Actual behavior
Too many errors with different situations
Configuration
Android versions: 8.0.0 Device models:Xiaomi Mi mix , Huawei P6 , Samsung J7 Prime Mapbox SDK versions: 8.4.0