繁体   English   中英

Xamarin 绑定错误:java.lang.NoSuchMethodError: No virtual method build()Lcom/google/android/exoplayer2/DefaultLoadControl

[英]Xamarin Binding error: java.lang.NoSuchMethodError: No virtual method build()Lcom/google/android/exoplayer2/DefaultLoadControl

我为Triton Digital Mobile SDK创建了一个绑定库,并将其集成到我的 Xamarin.Android 项目中。

我已将此代码添加到我的项目中以测试绑定库

using Com.Tritondigital.Player;
namespace MyProject.Droid.Services
{
    public class AudioSource : Service, AudioManager.IOnAudioFocusChangeListener
    {
        .
        .
        .
        public void Play()
        {
            Bundle settings = new Bundle();
            settings.PutString(TritonPlayer.SettingsStreamUrl, "http://storage.googleapis.com/automotive-media/Jazz_In_Paris.mp3");

            // Create the player.
            TritonPlayer player = new TritonPlayer(this, settings);
            player.Play();
        }
        .
        .
        .
    }
}

但是在运行时,它会抛出一个致命异常

[TdStreamPlayer] SETTINGS_STREAM_MIME_TYPE not set. Deduced from URL: audio/mpeg
[TdStreamPlayer] SETTINGS_TRANSPORT not set. Deduced from URL: sc
[TdTritonPlayer] State changed: Stopped -> Connecting
[TdExoPlayerBkg] ExoPlayer URL: http://storage.googleapis.com/automotive-media/Jazz_In_Paris.mp3
[TdExoPlayerBkg] ExoPlayer buffer start: 2500 rebuffer: 8000 timeout: 15000
[AndroidRuntime] Shutting down VM
[AndroidRuntime] FATAL EXCEPTION: main
[AndroidRuntime] Process: com.company.myapp, PID: 8630
[AndroidRuntime] java.lang.NoSuchMethodError: No virtual method build()Lcom/google/android/exoplayer2/DefaultLoadControl; in class Lcom/google/android/exoplayer2/DefaultLoadControl$Builder; or its super classes (declaration of 'com.google.android.exoplayer2.DefaultLoadControl$Builder' appears in /data/app/com.company.myapp-bJibtmPeizHK0sfcwRqrpA==/base.apk)
[AndroidRuntime]    at com.tritondigital.player.TdExoPlayer$PlayerHandler.b(SourceFile:97)
[AndroidRuntime]    at com.tritondigital.player.TdExoPlayer$PlayerHandler.handleMessage(SourceFile:66)
[AndroidRuntime]    at android.os.Handler.dispatchMessage(Handler.java:106)
[AndroidRuntime]    at android.os.Looper.loop(Looper.java:193)
[AndroidRuntime]    at android.app.ActivityThread.main(ActivityThread.java:6669)
[AndroidRuntime]    at java.lang.reflect.Method.invoke(Native Method)
[AndroidRuntime]    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
[AndroidRuntime]    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
[MonoDroid] UNHANDLED EXCEPTION:
[MonoDroid] Java.Lang.IncompatibleClassChangeError: No virtual method build()Lcom/google/android/exoplayer2/DefaultLoadControl; in class Lcom/google/android/exoplayer2/DefaultLoadControl$Builder; or its super classes (declaration of 'com.google.android.exoplayer2.DefaultLoadControl$Builder' appears in /data/app/com.company.myapp-bJibtmPeizHK0sfcwRqrpA==/base.apk)
[MonoDroid]   --- End of managed Java.Lang.IncompatibleClassChangeError stack trace ---
[MonoDroid] java.lang.NoSuchMethodError: No virtual method build()Lcom/google/android/exoplayer2/DefaultLoadControl; in class Lcom/google/android/exoplayer2/DefaultLoadControl$Builder; or its super classes (declaration of 'com.google.android.exoplayer2.DefaultLoadControl$Builder' appears in /data/app/com.company.myapp-bJibtmPeizHK0sfcwRqrpA==/base.apk)
[MonoDroid]     at com.tritondigital.player.TdExoPlayer$PlayerHandler.b(SourceFile:97)
[MonoDroid]     at com.tritondigital.player.TdExoPlayer$PlayerHandler.handleMessage(SourceFile:66)
[MonoDroid]     at android.os.Handler.dispatchMessage(Handler.java:106)
[MonoDroid]     at android.os.Looper.loop(Looper.java:193)
[MonoDroid]     at android.app.ActivityThread.main(ActivityThread.java:6669)
[MonoDroid]     at java.lang.reflect.Method.invoke(Native Method)
[MonoDroid]     at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
[MonoDroid]     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)

关于如何解决这个问题的任何想法?

尝试使用文档中提到的 embeddedjar 构建操作在绑定项目中为 exoplayer 添加 jar

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM