从android中的线程播放mp3文件

时间:2013-04-30 12:17:14

标签: android

我是Android的新手,我刚刚用Java中的run方法创建了Thread对象。我认为可以在这里创建MediaPlayer对象,并从 Android目录/data/data/application/files播放一些mp3格式的歌曲。我的目标是播放一首又一首的歌曲。每个指定的时间段(如20秒)。 但是我不清楚如何创建MediaPlayer对象(我应该以{{1​​}}传递什么?)

此外,我不知道如何在指定的时间内播放一首歌曲,然后转到下一首歌曲。

也许context不适合这样的任务?我会很感激任何建议。

2 个答案:

答案 0 :(得分:1)

我有这个警报代码

private void playSound(Context context, Uri alert, Boolean alarm) {

    try {

        final AudioManager audioManager = (AudioManager) context
                .getSystemService(Context.AUDIO_SERVICE);
        if (audioManager.getStreamVolume(AudioManager.STREAM_ALARM) != 0
                && alarm == true) {
            mMediaPlayer.setAudioStreamType(AudioManager.STREAM_ALARM);
            mMediaPlayer.setLooping(true);
            mMediaPlayer.prepare();
            mMediaPlayer.start();
            alarmisplaying = true;
        } else {

            mMediaPlayer.stop();
            alarmisplaying = false;

        }
    } catch (IOException e) {
        System.out.println("OOPS");
    }

作为上下文,您可以传递getApplicationContext(),如果您想停止播放,只需将false传递为警报(如果您开始播放声音,则传递true)。

答案 1 :(得分:1)

您可以在此guide找到许多基础知识。上下文是Android应用程序中经常需要的对象,通常是当前处于活动状态的活动或服务,表示您与Android框架的连接。