📅  最后修改于: 2023-12-03 15:23:58.211000             🧑  作者: Mango
在这篇文章中,我将会介绍如何用Android Studio构建一个简单的音乐播放器应用。
在Android Studio中创建一个新项目,选择“Empty Activity”作为模板。
我们需要添加以下依赖来支持音乐播放功能:
implementation 'com.google.android.exoplayer:exoplayer:2.8.4'
把音乐文件复制到“res/raw”目录下。在这个例子中,我们使用了一个名为“sample.mp3”的音乐文件。
我们需要创建一个ExoPlayer对象来实现音乐播放功能。在MainActivity中添加以下代码:
private SimpleExoPlayer player;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
player = new SimpleExoPlayer.Builder(this).build();
DataSource.Factory dataSourceFactory = new DefaultDataSourceFactory(this, Util.getUserAgent(this, "musicPlayer"));
MediaSource mediaSource = new ProgressiveMediaSource.Factory(dataSourceFactory).createMediaSource(R.raw.sample);
player.prepare(mediaSource);
}
这个代码片段创建了一个SimpleExoPlayer对象,并使用DataSource.Factory和MediaSource来准备音乐文件。
我们可以在MainActivity中添加以下代码控制播放/暂停:
public void onClickPlayPause(View view) {
if(player.isPlaying()) {
player.pause();
} else {
player.play();
}
}
我们需要正确地处理生命周期以确保播放器不会在活动暂停或停止时持续播放:
@Override
protected void onStart() {
super.onStart();
if(Util.SDK_INT > 23) {
player.prepare();
}
}
@Override
protected void onResume() {
super.onResume();
if((Util.SDK_INT <= 23 || player == null)) {
player.prepare();
}
}
@Override
protected void onPause() {
super.onPause();
if(Util.SDK_INT <= 23) {
player.release();
}
}
@Override
protected void onStop() {
super.onStop();
if(Util.SDK_INT > 23) {
player.release();
}
}
在Android Studio中点击“Run”按钮运行应用。当应用启动后,可以点击播放按钮开始播放音乐,再次点击按钮则暂停。
在这篇文章中,我们介绍了如何用Android Studio创建一个简单的音乐播放器应用。我们使用了ExoPlayer库来实现音乐播放功能,通过添加播放/暂停控制和正确地处理生命周期来使应用更加完善。