Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/185.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法停止活动android_Android_Call_Android Mediaplayer - Fatal编程技术网

无法停止活动android

无法停止活动android,android,call,android-mediaplayer,Android,Call,Android Mediaplayer,MediaPlayer在接到电话时不会暂停。所以我在桌面上添加了,它可以工作,但是如果我试图用操作栏中的后退按钮或后退按钮返回到应用程序的主菜单,它就会崩溃。如果有人能帮忙,那就太好了!只有初学者 阶级 这里有一些解释: 或者在官方网站上,您有非常有用的活动工作流不要使用此 @Override public void onBackPressed(){ if (mp != null){ if(mp.isPlaying())

MediaPlayer在接到电话时不会暂停。所以我在桌面上添加了,它可以工作,但是如果我试图用操作栏中的后退按钮或后退按钮返回到应用程序的主菜单,它就会崩溃。如果有人能帮忙,那就太好了!只有初学者

阶级


这里有一些解释:

或者在官方网站上,您有非常有用的活动工作流

不要使用此

  @Override 
    public void onBackPressed(){
      if (mp != null){
          if(mp.isPlaying())
              mp.stop();

          mp.release();
      }
您可以使用on resume恢复音乐播放

protected void onResume()
    {   
        // TODO Auto-generated method stub
        super.onResume();
    }
您必须了解活动生命周期 或者参考我的答案

9-12 14:52:49.755:E/AndroidRuntime(26104):由以下原因引起: java.lang.IllegalStateException 09-12 14:52:49.755: E/AndroidRuntime(26104):在 android.media.MediaPlayer.isplay(本机方法)

IllegalStateException
发生异常,因为当您按下后,内部播放器已被释放,并且在此之后您正在调用
isplay


OnBackpress后会执行OnStop,您正在释放mp对象,然后尝试暂停它。我能做些什么来解决此问题?只需评论onBackPresed并检查是否有效或将整个内容放入onPauseSorry不知道您的意思抱歉,只是一个初学者。您能在回答中给我看一下我的代码吗。@用户只需暂停即可。谢谢您的工作!问题是在电话呼叫后,音频暂停,但按钮显示正在播放,因此我如何使暂停按钮变回播放状态。非常感谢,得到了很多帮助:D
  @Override 
    public void onBackPressed(){
      if (mp != null){
          if(mp.isPlaying())
              mp.stop();

          mp.release();
      }
protected void onResume()
    {   
        // TODO Auto-generated method stub
        super.onResume();
    }