首先,在res文件夹下创建一个名为'raw'的文件夹,将音频文件'music1.mp3'和'music2.mp3'放入其中。

接下来,在MainActivity.java文件中编写代码:

import android.media.AudioManager;
import android.media.SoundPool;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    private SoundPool soundPool;
    private int sound1, sound2;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // 初始化SoundPool
        soundPool = new SoundPool(2, AudioManager.STREAM_MUSIC, 0);

        // 加载音频文件
        sound1 = soundPool.load(this, R.raw.music1, 1);
        sound2 = soundPool.load(this, R.raw.music2, 1);

        // 设置按钮点击事件
        Button play1Button = findViewById(R.id.play1_button);
        play1Button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                soundPool.play(sound1, 1, 1, 0, 0, 1);
            }
        });

        Button play2Button = findViewById(R.id.play2_button);
        play2Button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                soundPool.play(sound2, 1, 1, 0, 0, 1);
            }
        });
    }

    // 释放SoundPool资源
    @Override
    protected void onDestroy() {
        super.onDestroy();
        soundPool.release();
        soundPool = null;
    }
}

其中,SoundPool是Android提供的一个用于播放短音频文件的类,它可以通过load()方法加载音频文件,并通过play()方法播放音频文件。在MainActivity中,我们首先初始化了SoundPool,并加载了'music1.mp3'和'music2.mp3'两个音频文件。然后,为'播放1'和'播放2'两个按钮设置了点击事件,分别播放对应的音频文件。

最后,为了避免资源浪费,我们在onDestroy()方法中释放了SoundPool的资源。

Android SoundPool 音频播放示例:使用按钮播放两个音频文件

原文地址: http://www.cveoy.top/t/topic/oTcN 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录