【发布时间】:2018-05-19 19:34:29
【问题描述】:
我刚刚偶然发现“SoundPool”的这个功能听起来很酷。但是经过数小时研究 Android 文档和示例后,我无法得到任何工作。我不确定我是否错过了什么。编译器(Android Studio)没有报错。就在我点击播放声音的按钮时,没有声音播放。请帮忙。
这是我想出的主要代码。
public class MainActivity extends AppCompatActivity {
Button btnPlay;
AudioAttributes audioAttributes;
SoundPool sp;
TextView tvNote;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnPlay = (Button) findViewById(R.id.btnPlay);
tvNote = (TextView) findViewById(R.id.tvNote);
}
public void playClicked(View v) {
audioAttributes = new AudioAttributes.Builder()
.setContentType(AudioAttributes.CONTENT_TYPE_MUSIC)
.setUsage(AudioAttributes.USAGE_MEDIA)
.build();
sp = new SoundPool.Builder()
.setMaxStreams(4)
.setAudioAttributes(audioAttributes)
.build();
int soundId = sp.load(getApplicationContext(), R.raw.piano_c3, 1);
sp.play(soundId, 1, 1, 1, 0, 1f);
tvNote.setText("piano_c3");
}
请告诉我我错过了什么。谢谢。
【问题讨论】:
标签: android audio playback soundpool