Uygulamalarım ilk olarak hizmetten ve etkinlikten ikinci olmak üzere iki ses çalıyor. İkinci ses çalarken ilk sesin sesini azaltmak istiyorum. İkinci sesi durdurduktan sonra, ilk sesin hacmi artırılmalıdır.Hizmetten çalınan ses düzeyi nasıl kontrol edilir?
cevap
MediaPlayer'ın bunun için yöntemleri vardır. Sol ve sağ kanal için ses seviyesi ayarlar. yoksayılmıyor: Eğer hizmetiyle zamana denk gelecek şekilde MediaPlayer
uygulanan ama benim testinde yılında, benim hizmetinde MediaPlayer
bir örneğini oluşturdu nasıl
mediaPlayerA.setVolume(1.0f, 1.0f);
dilsiz diğer oyuncu
mediaPlayerB.setVolume(0.0f, 0.0f);
Basit ama yararlı. Teşekkürler ;.) – JanPl
emin değil sınıf. Hizmet sınıfının hizmet dışı sınıfının MediaPlayer
örneğinin hacmini kontrol etmek için, MediaPlayer
örneğini statik üye olarak ayarladım. Bunu yapan (olan kendi ses çalıyor) Etkinliğime olarak
static MediaPlayer mediaPlayer = new MediaPlayer();
:
Yani benim hizmet sınıfında i bunu
MyOwnService.mediaPlayer.setVolume(0.1f, 0.1f);
Yani, benim faaliyeti içine atladığında Etkinliğin oynatılmasından önce bu ifadeyi kullandım. Dikkat etmedim (0.0f, 0.0f). Şamandıralarınızla ihtiyaçlarınızı karşılayana kadar oynayabilirsiniz. 0.0f - 1.0f arasında değişmektedir.
Etkinliğimde, etkinlik için sesin ne zaman tamamlandığını bildiğim için MediaPlayer.OnCompletionListener
'u da uyguladım. Bu arabirimin, onCompletion(MediaPlayer mp)
'u uygulamak için bir yöntemi vardır. Bu yöntem ses tamamlandığında çağrılır.
Yani benim aktivitesinde ben de yaptım: Burada
@Override
public void onCompletion(MediaPlayer mp) {
MyOwnService.mediaPlayer.setVolume(1.0f, 1.0f);
}
bu etkinlik olması dahilinde ses çalma şimdi tamamladı beri, o zaman, geri maksimum hizmet müziğin ses düzeyini yükseltti.
Yine, bu testin tamamıydi ve statik bir üyeyi tıpkı bunun gibi (yayınlanan bir uygulamada) açığa çıkarmak istemem, bir şekilde nasıl kapsülleyeceğimi, bu yüzden bir tür erişim denetimi var.
Umarım bu yardımcı olmuştur.
Oynatım için hangi Apis kullanıyorsunuz? – JohanShogun
Android MediaPlayer'ı kullanmak ve ses benim ham klasörümde. –