简体   繁体   English

试图播放媒体,应用程序崩溃

[英]Trying to play Media, app crashes

This is the block of code I am trying to execute when the app crashes. 这是我在应用程序崩溃时尝试执行的代码块。

    bsharks.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v){ 
            if (ducks.isPlaying()) {
                ducks.stop();
                ducks.prepareAsync();
                ducks.seekTo(0);
            }
            else{
                ducks = MediaPlayer.create(MainActivity.this, R.raw.sharks);
                ducks.start();
            }
        }
    });

And the log cat (full name blocked out). 和日志猫(全名被阻止)。

Change your code like the below 像下面一样更改您的代码

MediaPlayer ducks = MediaPlayer.create(MainActivity.this, R.raw.sharks);
bsharks.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v){ 
            if (ducks.isPlaying()) {
                ducks.stop();
                ducks.prepareAsync();
                ducks.seekTo(0);
            }
            else{

                ducks.start();
            }
        }
    });

We need to create Mediaplayer object before we using that object. 我们需要在使用该对象之前创建Mediaplayer对象。 So create Mediaplayer object in onCreate method of An actvity. 因此,在onCreate方法中创建Mediaplayer对象。 Place following line in onCreate . onCreate放置以下行。

    ducks = MediaPlayer.create(MainActivity.this, R.raw.sharks);

and put remaining code in button's onClick event as follows. 并将剩余的代码放在按钮的onClick事件中,如下所示。

bsharks.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v){            
    if (ducks.isPlaying()) {
            ducks.stop();
            ducks.prepareAsync();
            ducks.seekTo(0);
        }
    else
        {   
            ducks.start();
        }
    }
 });

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

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