(Context, token) in the instance of MediaController

I am trying to add mediaController to my VideoView. I am trying to complete a tutorial on this site .

However, I have an error in my class on this line.

MediaController mediaController = new MediaController(this); 

The error says:

MediaController (Context, Token) in MediaController cannot be applied to (MainActivity)

What is the Token parameter? It has been a while since I encoded in Native Android, and I think I missed some necessary details and changes.

EDIT I looked in another tutorial, the one in the link, made in Android Studio. My mistake.

My class

 public class MainActivity extends ActionBarActivity { public VideoView videoOne; @Override protected void onCreate(final Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); videoOne = (VideoView) findViewById(R.id.videoView); videoOne.setVideoURI(Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.video1)); videoOne.start(); MediaController mediaController = new MediaController(this); mediaController.setAnchorView(videoOne); videoOne.setMediaController(mediaController); videoOne.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { @Override public void onPrepared(MediaPlayer mp) { Log.i("Video Duration", "Duration = " + videoOne.getDuration()); } }); videoOne.setMediaController(mediaController); } 
+5
source share
4 answers

The error is pretty simple. Make sure you import the correct MediaController . For your purpose you need this import:

 import android.widget.MediaController; 

The above class has the constructor you are looking for. Link:

http://developer.android.com/reference/android/widget/MediaController.html#MediaController(android.content.Context)

Perhaps you are using one of them:

  import android.media.session.MediaController; 

Hope this helps

+25
source

this question solves the problem of 'this'

 import import android.widget.MediaController; 
+2
source

I solved it. I imported android.media.session.MediaController instead of android.widget.MediaController

+1
source
  videoview.setOnPreparedListener(new OnPreparedListener() { @Override public void onPrepared(MediaPlayer mp) { mp.setOnVideoSizeChangedListener(new OnVideoSizeChangedListener() { @Override public void onVideoSizeChanged(MediaPlayer mp, int width, int height) { /* * add media controller */ mc = new MediaController(YourActivity.this);; videoview.setMediaController(mc); /* * and set its position on screen */ mc.setAnchorView(videoview); } }); } }); 
0
source

Source: https://habr.com/ru/post/1213205/


All Articles