使用Runnable循环MediaPlayer失败

时间:2015-09-11 17:39:48

标签: java android

try {
        mp.setDataSource(text);
        mp.prepare();
        mp.setVolume(0.4f, 0.4f);

    }
    catch (IllegalArgumentException e) {
        e.printStackTrace();
    } catch (SecurityException e) {
        e.printStackTrace();
    } catch (IllegalStateException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    catch (InterruptedException e)
    {
        e.printStackTrace();
    }
    catch (IllegalMonitorStateException e)
    {
        e.printStackTrace();
    }

final Handler hlr = new Handler();

   final Runnable looper = new Runnable() {
       @Override
       public void run()
       {
           if(mp!=null)
           {
               if(mp.isPlaying())
               {
                   mp.stop();
               }
           }

           mp.start();

       }
   };





    mp.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
        public void onCompletion(MediaPlayer mp)
        {
            hlr.postDelayed(looper, 5000);
        }
    });

以上代码行是警报活动的一部分,我的目标是循环音频文件,延迟为5000 ms。但是,代码似乎没有任何影响。无法播放音频。我究竟做错了什么?请帮我解决这个问题。任何帮助将不胜感激。

0 个答案:

没有答案