ConnectSDK / Connect-SDK-Android-API-Sampler

Creative Commons Zero v1.0 Universal
24 stars 21 forks source link

NoClassDefFoundError: InetAddressUtils from com.amazon.whisperlink #50

Closed yoobi closed 1 year ago

yoobi commented 1 year ago

Hello,

I'm using a Pixel 6 Android 12 API 32 device and got this error whenever I start the project: The weird thing is that the project starts properly on the same API in emulated device

FATAL EXCEPTION: WP_1_WPWorker_0
Process: com.connectsdk.sampler, PID: 21587
java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/conn/util/InetAddressUtils;
    at com.amazon.whisperlink.android.util.RouteUtil.createRoute(RouteUtil.java:78)
    at com.amazon.whisperlink.android.util.RouteUtil.createRoute(RouteUtil.java:51)
    at com.amazon.whisperlink.core.android.explorers.util.AndroidMdnsUtil.populateDevice(AndroidMdnsUtil.java:146)
    at com.amazon.whisperlink.core.android.explorers.JmdnsServiceManager.processServiceResolved(JmdnsServiceManager.java:167)
    at com.amazon.whisperlink.core.android.explorers.JmdnsServiceListener$1.run(JmdnsServiceListener.java:100)
    at com.amazon.whisperlink.util.ThreadUtils$2.run(ThreadUtils.java:152)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
    at java.lang.Thread.run(Thread.java:1012)
Caused by: java.lang.ClassNotFoundException: Didn't find class "org.apache.http.conn.util.InetAddressUtils" on path: DexPathList[[zip file "/data/app/~~-nYVv1sA24guSZ8dJBSNbg==/com.connectsdk.sampler-lzRDStHVMeqDxowVw5l42Q==/base.apk"],nativeLibraryDirectories=[/data/app/~~-nYVv1sA24guSZ8dJBSNbg==/com.connectsdk.sampler-lzRDStHVMeqDxowVw5l42Q==/lib/arm64, /data/app/~~-nYVv1sA24guSZ8dJBSNbg==/com.connectsdk.sampler-lzRDStHVMeqDxowVw5l42Q==/base.apk!/lib/arm64-v8a, /system/lib64, /system_ext/lib64]]
    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:259)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
    at com.amazon.whisperlink.android.util.RouteUtil.createRoute(RouteUtil.java:78)
    at com.amazon.whisperlink.android.util.RouteUtil.createRoute(RouteUtil.java:51)
    at com.amazon.whisperlink.core.android.explorers.util.AndroidMdnsUtil.populateDevice(AndroidMdnsUtil.java:146)
    at com.amazon.whisperlink.core.android.explorers.JmdnsServiceManager.processServiceResolved(JmdnsServiceManager.java:167)
    at com.amazon.whisperlink.core.android.explorers.JmdnsServiceListener$1.run(JmdnsServiceListener.java:100)
    at com.amazon.whisperlink.util.ThreadUtils$2.run(ThreadUtils.java:152)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
    at java.lang.Thread.run(Thread.java:1012)
yoobi commented 1 year ago

After better searching I found the solution, leaving it here for anyone who needs it:

<application>
    <uses-library android:name="org.apache.http.legacy" android:required="false" />
</application>