Jamal
Jamal

Reputation: 976

Application is crashed when playing a video

I am working on playing a video in Fullscreen mode.I have played a video using videoview it is playing well but unfortunately It is crashing when tap the video while it is in playing condition.and also after played a video if we click the back button app have been crashed. above two condition I am getting same Exception android.view.WindowManager$BadTokenException. Here my code given below.

public void previewVideo(Uri mediaUri) {         

            videoPreview.setVideoURI(mediaUri);
            MediaController mediaController = new MediaController(getApplicationContext());
            mediaController.setAnchorView(videoPreview);
            videoPreview.setMediaController(mediaController);
            videoPreview.requestFocus();
            videoPreview.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
                // Close the progress bar and play the video
                public void onPrepared(MediaPlayer mp) {

                    videoPreview.start();
                }
            });

Exception

11-07 19:22:26.524    1229-1229/com.ontometrics.parent E/InputEventReceiver﹕ Exception dispatching input event.
11-07 19:22:26.524    1229-1229/com.ontometrics.parent E/MessageQueue-JNI﹕ Exception in MessageQueue callback: handleReceiveCallback
11-07 19:22:26.534    1229-1229/com.ontometrics.parent E/MessageQueue-JNI﹕ android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is your activity running?
            at android.view.ViewRootImpl.setView(ViewRootImpl.java:771)
            at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:278)
            at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)
            at android.widget.MediaController.show(MediaController.java:346)
            at android.widget.MediaController.show(MediaController.java:306)
            at 
            at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2434)
            at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2123)

Upvotes: 1

Views: 673

Answers (1)

Ion Aalbers
Ion Aalbers

Reputation: 8030

Use

MediaController mediaController = new MediaController(MyActivity.this);

instead of

MediaController mediaController = new MediaController(getApplicationContext());

Upvotes: 4

Related Questions