zelloptt / zello-channel-api

WebSocket-based API and SDKs to connect to Zello channels (BETA)
MIT License
87 stars 34 forks source link

App is crashing on first run itself #24

Open shreyas-algo opened 5 years ago

shreyas-algo commented 5 years ago

Integrated the SDK as suggested in the docs but somehow my app is constantly crashing after I added the PTT related code. Can you please help?

Log attached here

piyush-ramavat commented 5 years ago

I tried running the DEMO app itself in given SDK. App screen did run with rider, Driver, qa buttons. But pressing any button crashed the app.

Anyway. In above app, this is the exception where one of the class is missing in compiled binary:

2018-12-15 20:13:28.974 28444-28444/tech.kwikly.app E/AndroidRuntime: FATAL EXCEPTION: main
    Process: tech.kwikly.app, PID: 28444
    java.lang.NoClassDefFoundError: Failed resolution of: Lcom/zello/channel/sdk/b/e;
        at com.zello.channel.sdk.Session.performConnect(Unknown Source:8)
        at com.zello.channel.sdk.Session.connect(Unknown Source:32)
        at tech.kwikly.app.UserListActivity.onCreate(UserListActivity.kt:79)
        at android.app.Activity.performCreate(Activity.java:7041)
        at android.app.Activity.performCreate(Activity.java:7032)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1231)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2864)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2989)
        at android.app.ActivityThread.-wrap11(Unknown Source:0)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1688)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:164)
        at android.app.ActivityThread.main(ActivityThread.java:6753)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:482)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
     Caused by: java.lang.ClassNotFoundException: com.zello.channel.sdk.b.e
        at java.lang.VMClassLoader.findLoadedClass(Native Method)
        at java.lang.ClassLoader.findLoadedClass(ClassLoader.java:738)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:363)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at com.zello.channel.sdk.Session.performConnect(Unknown Source:8) 
        at com.zello.channel.sdk.Session.connect(Unknown Source:32) 
        at tech.kwikly.app.UserListActivity.onCreate(UserListActivity.kt:79) 
        at android.app.Activity.performCreate(Activity.java:7041) 
        at android.app.Activity.performCreate(Activity.java:7032) 
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1231) 
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2864) 
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2989) 
        at android.app.ActivityThread.-wrap11(Unknown Source:0) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1688) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:164) 
        at android.app.ActivityThread.main(ActivityThread.java:6753) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:482) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807) 
     Caused by: java.lang.NoClassDefFoundError: Failed resolution of: Lokhttp3/WebSocketListener;
        at com.zello.channel.sdk.Session.performConnect(Unknown Source:8) 
        at com.zello.channel.sdk.Session.connect(Unknown Source:32) 
        at tech.kwikly.app.UserListActivity.onCreate(UserListActivity.kt:79) 
        at android.app.Activity.performCreate(Activity.java:7041) 
        at android.app.Activity.performCreate(Activity.java:7032) 
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1231) 
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2864) 
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2989) 
        at android.app.ActivityThread.-wrap11(Unknown Source:0) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1688) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:164) 
        at android.app.ActivityThread.main(ActivityThread.java:6753) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:482) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807) 
     Caused by: java.lang.ClassNotFoundException: Didn't find class "okhttp3.WebSocketListener" on path: DexPathList[[zip file "/data/app/tech.kwikly.app-vkQJ_9kpnLle-Q_UFJOK8g==/base.apk"],nativeLibraryDirectories=[/data/app/tech.kwikly.app-vkQJ_9kpnLle-Q_UFJOK8g==/lib/arm64, /data/app/tech.kwikly.app-vkQJ_9kpnLle-Q_UFJOK8g==/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:125)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at com.zello.channel.sdk.Session.performConnect(Unknown Source:8) 
        at com.zello.channel.sdk.Session.connect(Unknown Source:32) 
        at tech.kwikly.app.UserListActivity.onCreate(UserListActivity.kt:79) 
        at android.app.Activity.performCreate(Activity.java:7041) 
        at android.app.Activity.performCreate(Activity.java:7032) 
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1231) 
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2864) 
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2989) 
        at android.app.ActivityThread.-wrap11(Unknown Source:0) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1688) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:164) 
        at android.app.ActivityThread.main(ActivityThread.java:6753) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:482) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807) 
2018-12-15 20:13:28.977 598-598/? E/SELinux: avc:  denied  { find } for service=opdiagnose pid=28444 uid=10204 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:opdiagnose_service:s0 tclass=service_manager permissive=0
2018-12-15 20:13:28.977 598-598/? E/SELinux: avc:  denied  { find } for service=opdiagnose pid=28444 uid=10204 scontext=u:r:untrusted_app:s0:c512,c768 tcontext=u:object_r:opdiagnose_service:s0 tclass=service_manager permissive=0
2018-12-15 20:13:28.977 28444-28444/tech.kwikly.app W/OPDiagnose: getService:OPDiagnoseService NULL
paibhavesh commented 5 years ago

Hey Guys

I have tried the sample and and it is still crashing with the below logs

java.lang.NoSuchMethodError: No virtual method getCode()Lcom/zello/channel/sdk/SessionConnectError$Code; in class Lcom/zello/channel/sdk/SessionConnectError; or its super classes (declaration of 'com.zello.channel.sdk.SessionConnectError' appears in /data/app/com.zello.com.embeddable.demo-agUv8Zie38NzUCe1M7wUWw==/base.apk) at com.zello.sample.ride.MainActivity$Companion.getConnectErrorText(MainActivity.kt:656) at com.zello.sample.ride.MainActivity.onConnectFailed(MainActivity.kt:310) at com.zello.channel.sdk.Session.setConnectError(Unknown Source:4) at com.zello.channel.sdk.Session.onConnectFailed(Unknown Source:20) at com.zello.channel.sdk.Session.access$onConnectFailed(Unknown Source:0) at com.zello.channel.sdk.Session$b.c(Unknown Source:2) at com.zello.channel.sdk.b.e$f.a(Unknown Source:33) at com.zello.channel.sdk.b.e$c.b(Unknown Source:20) at com.zello.channel.sdk.b.e$e.handleMessage(Unknown Source:15) at android.os.Handler.dispatchMessage(Handler.java:103) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:7356) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)

Allanksr commented 4 years ago

OK, let's go. Use of the 'com.squareup.okhttp3: okhttp: 3.7.0' library is required and cannot be updated. If your authentication(AuthToken) key is wrong or expired, this method

fun getConnectErrorText(error: SessionConnectError, context: Context): String {
        val id = when (error.code) {
            SessionConnectError.Code.CONNECT_FAILED -> R.string.error_connect_failed
            SessionConnectError.Code.BAD_CREDENTIALS -> R.string.error_connect_credentials
            SessionConnectError.Code.INVALID_ADDRESS -> R.string.error_invalid_address
            else -> null
        }
        if (id != null) {
            return context.resources.getString(id)
        } else {
            return error.toString()
        }
    }

  in MainActivity is unable to handle error results, and causes the application to crash. For now that's it.