triniwiz / nativescript-plugins

Apache License 2.0
80 stars 50 forks source link

nativescript-socketio crashes on Android 11+ #99

Open mohammadrafigh opened 2 years ago

mohammadrafigh commented 2 years ago

nativescript-socketio crashes on Android 11+:

An uncaught Exception occurred on "EventThread" thread.
null

StackTrace:
java.lang.ExceptionInInitializerError
    at okhttp3.internal.platform.Platform.get(Platform.java:85)
    at okhttp3.OkHttpClient.newSslSocketFactory(OkHttpClient.java:263)
    at okhttp3.OkHttpClient.<init>(OkHttpClient.java:229)
    at okhttp3.OkHttpClient.<init>(OkHttpClient.java:202)
    at io.socket.engineio.client.Socket.<init>(Socket.java:215)
    at io.socket.engineio.client.Socket.<init>(Socket.java:174)
    at io.socket.client.Manager$Engine.<init>(Manager.java:555)
    at io.socket.client.Manager$1.run(Manager.java:233)
    at io.socket.thread.EventThread.exec(EventThread.java:55)
    at io.socket.client.Manager.open(Manager.java:222)
    at io.socket.client.Manager.open(Manager.java:212)
    at io.socket.client.Socket$3.run(Socket.java:122)
    at io.socket.thread.EventThread$2.run(EventThread.java:80)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
    at java.lang.Thread.run(Thread.java:923)
Caused by: java.lang.IllegalStateException: Expected Android API level 21+ but was 30
    at okhttp3.internal.platform.AndroidPlatform.buildIfSupported(AndroidPlatform.java:238)
    at okhttp3.internal.platform.Platform.findPlatform(Platform.java:202)
    at okhttp3.internal.platform.Platform.<clinit>(Platform.java:79)
    ... 16 more

As a workaround adding implementation 'com.squareup.okhttp3:okhttp:3.14.9' in gradle dependencies fixes the issue. But we should wait for an update in socket.io java package.