apivideo / api.video-flutter-live-stream

Flutter RTMP live stream client. Made with ♥ by api.video
MIT License
70 stars 41 forks source link

Crash on release #6

Closed Glexium closed 2 years ago

Glexium commented 2 years ago

Describe the bug It works as expected on debug, but it crashes on release.

Log: E/AndroidRuntime(11606): java.lang.UnsatisfiedLinkError: JNI_ERR returned from JNI_OnLoad in "/data/app/com.my.app-L3SGD6rspNjDMhOV4NA6dw==/base.apk!/lib/arm64-v8a/librtmpdroid.so" E/AndroidRuntime(11606): at java.lang.Runtime.loadLibrary0(Runtime.java:1016) E/AndroidRuntime(11606): at java.lang.System.loadLibrary(System.java:1669) E/AndroidRuntime(11606): at video.api.rtmpdroid.a.(Unknown Source:9) E/AndroidRuntime(11606): at video.api.rtmpdroid.Rtmp.(Unknown Source:0) E/AndroidRuntime(11606): at h.b.a.a.c.a.a.a.a.(Unknown Source:17) E/AndroidRuntime(11606): at h.b.a.a.c.a.a.a.a.(Unknown Source:8) E/AndroidRuntime(11606): at h.b.a.a.c.a.b.a.(Unknown Source:26) E/AndroidRuntime(11606): at h.b.a.a.c.a.b.a.(Unknown Source:33) E/AndroidRuntime(11606): at m.a.a.a.g.g(Unknown Source:90) E/AndroidRuntime(11606): at m.a.a.a.g.e(Unknown Source:0) E/AndroidRuntime(11606): at m.a.a.a.g$a.a(Unknown Source:8) E/AndroidRuntime(11606): at m.a.a.a.g$a.invoke(Unknown Source:4) E/AndroidRuntime(11606): at m.a.a.a.e.d(Unknown Source:42) E/AndroidRuntime(11606): at m.a.a.a.g.h(Unknown Source:360) E/AndroidRuntime(11606): at h.a.c.a.j$a.a(Unknown Source:17) E/AndroidRuntime(11606): at io.flutter.embedding.engine.f.c.i(Unknown Source:18) E/AndroidRuntime(11606): at io.flutter.embedding.engine.f.c.j(Unknown Source:20) E/AndroidRuntime(11606): at io.flutter.embedding.engine.f.c.k(Unknown Source:0) E/AndroidRuntime(11606): at io.flutter.embedding.engine.f.a.run(Unknown Source:12) E/AndroidRuntime(11606): at android.os.Handler.handleCallback(Handler.java:873) E/AndroidRuntime(11606): at android.os.Handler.dispatchMessage(Handler.java:99) E/AndroidRuntime(11606): at android.os.Looper.loop(Looper.java:198) E/AndroidRuntime(11606): at android.app.ActivityThread.main(ActivityThread.java:6820) E/AndroidRuntime(11606): at java.lang.reflect.Method.invoke(Native Method) E/AndroidRuntime(11606): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) E/AndroidRuntime(11606): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)

Steps to reproduce the behavior: flutter run --release

Smartphone (please complete the following information):

ThibaultBee commented 2 years ago

Hi,

It seems there is something odd about the obfuscation of one of our native dependencies (rtmpdroid). As a workaround, you can now add in your equivalent of ./example/android/build.gradle

android {
    buildTypes {
        release {
          shrinkResources false
          minifyEnabled false
        }
    }
}

Best regards, Thibault

ThibaultBee commented 2 years ago

See https://github.com/apivideo/api.video-rtmpdroid/commit/edf529d59cccb5676281794d981cac8d12251f50

ThibaultBee commented 2 years ago

Hi, Could you test this? https://github.com/apivideo/api.video-flutter-live-stream/commit/5b2f00949e68fcc161035797d9e0569618983de2

Best regards, Thibault

Glexium commented 2 years ago

Hi, Yes I test it, it works, thank you!

ThibaultBee commented 2 years ago

Fixed in v1.0.3