반응형

MediaPlayer

설명

  • 오디오, 동영상 등을 재생하는 클래스
  • 원시 리소스 파일로 사용하기 위한 미디어 파일은 ~/src/main/res/raw 디렉토리에 저장해야 한다.

코드

MainActivity
class MainActivity : AppCompatActivity() {
    lateinit var binding: ActivityMainBinding
    private var mediaPlayer: MediaPlayer? = null

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)

        binding = ActivityMainBinding.inflate(layoutInflater).apply {
            setContentView(root)
            lifecycleOwner = this@MainActivity
        }
    }

    override fun onDestroy() {
        super.onDestroy()

        mediaPlayer?.apply { release() }
    }

    fun onClickPlay(view: View) {
        /*mediaPlayer = MediaPlayer().apply {
            setAudioStreamType(AudioManager.STREAM_MUSIC)
            setDataSource("https://example.com/test.mp3")
            prepare()
            start()
        }*/

        mediaPlayer = MediaPlayer.create(this, R.raw.backsound)
        mediaPlayer?.start()
        // mediaPlayer?.seekTo(10000) // 10초 뒤로 이동
        // mediaPlayer?.setVolume(0.1f, 0.1f) // 볼륨을 좌우 모두 10%로 낮추기
    }

    fun onClickStop(view: View) {
        mediaPlayer?.stop()
    }
}

참고

반응형

'Development > Android' 카테고리의 다른 글

[Android] kotlin-android-extensions  (0) 2021.02.09
[Android] SoundPool  (0) 2021.02.09
[Android] Resources  (0) 2021.02.09
[Android] SQLite  (0) 2021.02.09
[Android] Service  (0) 2021.02.09

+ Recent posts