gpt4 book ai didi

java - Activity 背景音频

转载 作者:行者123 更新时间:2023-12-01 10:11:46 25 4
gpt4 key购买 nike

我想将录制的音频添加到我正在解释示例的 Activity 的背景中。问题是音频在结束 Activity 后不会停止并且继续播放。我希望仅当我的 Activity 位于前面时才播放音频。请将服务类放入以下代码中

public class exp extends Activity  {
ImageView imview1,imview2;
final MediaPlayer mediaPlayer=new MediaPlayer();

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


imview2 = (ImageView) findViewById(R.id.imageView2);
mediaPlayer.create(exp.this,R.raw.babydoll);

imview2.setVisibility(View.INVISIBLE);

new Handler().postDelayed(new Runnable() {
@Override
public void run() {
imview2.setVisibility(View.VISIBLE);
mediaPlayer.start();
mediaPlayer.setLooping(true);
mediaPlayer.setVolume(100,100);

}
}, 2000);




}
protected void onPause(){
super.onPause();
mediaPlayer.pause();
}

}

最佳答案

首先。您必须使用服务来播放音乐,但如果您不想使用服务。创建媒体播放器的方法是 mediaPlayer = MediaPlayer.create(this,R.raw.facebook_tone);。

此代码当 Activity 传递到后台时音乐暂停,当 Activity 传递到前台时音乐继续播放。

public class MainActivity extends AppCompatActivity {

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

//get the MediaPlayer object
mediaPlayer = MediaPlayer.create(this,R.raw.facebook_tone);

new Handler().postDelayed(new Runnable() {
@Override
public void run() {

mediaPlayer.start();
mediaPlayer.setLooping(true);
mediaPlayer.setVolume(100,100);

}
}, 2000);
}

@Override
protected void onPause() {
super.onPause();
//pause the music
mediaPlayer.pause();
}

@Override
protected void onResume() {
super.onResume();
//validate if the mediaplayer is not null and not playing
if(mediaPlayer != null && !mediaPlayer.isPlaying()){

mediaPlayer.start();

}
}

}

关于java - Activity 背景音频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36086112/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com