Сбои Dreamservice VideoView

Я разрабатываю приложение, которое воспроизводит видео в качестве заставки. На самом деле мое приложение связывается со службой, поэтому, когда экран переходит в режим ожидания, он воспроизводит заставку.

Моя проблема в том, что когда я пытаюсь создать небольшой плейлист с 3 видео на нем, по какой-то причине он не работает, экран становится черным и блокирует телефон (я предполагаю, что служба аварийно завершилась, и журнал говорит об этом)

Любая идея сделать циклический список видео с VideoView в DreamService? или, может быть, вы могли бы помочь мне попытаться понять ошибку.

11-07 09:26:32.155  1477  1519 D ActivityTrigger: ActivityTrigger activityStopTrigger 
11-07 09:26:32.156  2045  3481 I RenderThread: RenderThread paused, waiting for signal
11-07 09:26:32.156  2045  2045 W IInputConnectionWrapper: getSelectedText on inactive InputConnection
11-07 09:26:32.157  1477  1548 W WindowAnimator: Failed to dispatch window animation state change.
11-07 09:26:32.157  1477  1548 W WindowAnimator: android.os.DeadObjectException
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at android.os.BinderProxy.transactNative(Native Method)
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at android.os.BinderProxy.transact(Binder.java:506)
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at android.view.IWindow$Stub$Proxy.onAnimationStopped(IWindow.java:534)
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at com.android.server.wm.WindowAnimator.updateWindowsLocked(WindowAnimator.java:289)
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at com.android.server.wm.WindowAnimator.animateLocked(WindowAnimator.java:681)
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at com.android.server.wm.WindowAnimator.access$000(WindowAnimator.java:53)
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at com.android.server.wm.WindowAnimator$1.doFrame(WindowAnimator.java:123)
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at android.view.Choreographer$CallbackRecord.run(Choreographer.java:858)
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at android.view.Choreographer.doCallbacks(Choreographer.java:672)
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at android.view.Choreographer.doFrame(Choreographer.java:605)
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:846)
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at android.os.Handler.handleCallback(Handler.java:742)
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at android.os.Handler.dispatchMessage(Handler.java:95)
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at android.os.Looper.loop(Looper.java:154)
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at android.os.HandlerThread.run(HandlerThread.java:61)
11-07 09:26:32.157  1477  1548 W WindowAnimator:    at com.android.server.ServiceThread.run(ServiceThread.java:46)

Это функция, которая воспроизводит видео:

private void reproducirVideo() {
        // Se crean los controles multimedia.
        reprod3.setVisibility(View.VISIBLE);


        reprod3.setVideoPath(videoRuta);
        reprod3.requestFocus();
        reprod3.start();

        if (reprod3.canSeekForward())
            reprod3.seekTo(reprod3.getDuration() / 2);

        //Loop del video:
        reprod3.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
            @Override
            public void onCompletion(MediaPlayer mediaPlayer) {

                nextVideo(mediaPlayer);

            }
        });
    }

И это меняет это:

public void nextVideo(MediaPlayer mp) {

        mp.reset();
        //reprod3.stopPlayback();
        index++;
        if (index > 2) {
            index = 0;
        }

        switch (index) {
            case 1:
                videoRuta = ruta2;
                break;
            case 2:
                videoRuta = ruta3;
                break;
            case 0:
                videoRuta = ruta1;
                break;
        }

        reprod3.setVideoPath(videoRuta);
        reprod3.start();
    }

0 ответов

Другие вопросы по тегам