【问题标题】:How to cancel application without task in background如何在后台取消没有任务的应用程序
【发布时间】:2020-12-09 10:39:10
【问题描述】:

您好,我在使用媒体播放器功能时正在制作应用程序。例如,当我关闭应用程序时,该媒体仍在后台工作。如何停止应用中的整个任务?

                    final Random rand = ThreadLocalRandom.current();
                    tv3.setText(kombosy[new Random().nextInt(kombosy.length)]);

                    int resourceID=R.raw.rin1;

                    switch (tv3.getText().toString()) {
                        case "1-2":
                            resourceID =  R.raw.rin1;

                            break;
                        case "1-1-2":
                            resourceID =  R.raw.rin2;

                            break;
                        case "1-2-3-2":
                            resourceID =  R.raw.rin3;
                            break;
                        case "1-2-5-2":
                            resourceID =  R.raw.rin4;

                            break;
                        case "1-6-3-2":
                            resourceID =  R.raw.rin5;

                            break;
                        case "2-3-2":
                            resourceID =  R.raw.rin6;

                            break;


                    }
                    plyer=MediaPlayer.create(this,resourceID);
                    plyer.start();


                }

【问题讨论】:

  • 您应该在完成活动之前调用 mediaplayer 停止并关闭。如果您需要更多帮助,请在此处发布一些代码以确定您面临的问题
  • 我编辑了我的问题

标签: java android task


【解决方案1】:

全局创建媒体播放器实例

MediaPlayer player;

您的开关盒应如下所示

您可以在 switch-case 语句中获取铃声资源 ID,然后创建单个媒体播放器对象。

int resourceID = R.raw.rin1;
switch (tv3.getText().toString()) {
    case "1-2":
        resourceID =  R.raw.rin1;
        break;
    case "1-1-2":
        resourceID =  R.raw.rin2;
        break;
    case "1-2-3-2":
        resourceID =  R.raw.rin3;
        break;
    case "1-2-5-2":
        resourceID =  R.raw.rin4;
        break;
    case "1-6-3-2":
        resourceID =  R.raw.rin5;
        break;
    case "2-3-2":
        resourceID =  R.raw.rin6;
        break;
}

像这样创建一个MediaPlayer 实例

player = MediaPlayer.create(this, resourceID);
player.start();
 

要停止您的媒体播放器,请调用此方法:

private void stopPlaying() {
    if (player != null) {
        player.stop();
        player.release();
        player = null;
    }
}

【讨论】:

  • 我应该在哪里输出这个代码 player = MediaPlayer.create(this, resourceID); player.start();
  • 因为当我把这个放在我的 switch case 函数之后我得到这个错误
  • 找不到合适的方法 create(,int) plyer=MediaPlayer.create(this,resourceID);
  • 你应该在 switch case 语句之后创建媒体播放器。
  • 仍然无法正常工作我在我的问题中编辑了我的代码
猜你喜欢
  • 2012-09-24
  • 1970-01-01
  • 2011-01-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-19
  • 2023-03-15
  • 1970-01-01
相关资源
最近更新 更多