Schritt-für-Schritt-Anleitung: Erstellung eines Audioplayers für Android mit MediaPlayer und SeekBar

Erfahren Sie in unserem neuesten Blogbeitrag, wie Sie einen benutzerfreundlichen Audioplayer für Android mit MediaPlayer und SeekBar entwickeln. Lernen Sie Schritt für Schritt, wie Sie Abspiel-/Stoppfunktionen implementieren und die Songposition dynamisch ändern können. Tauchen Sie in die Welt der Android-Entwicklung ein und heben Sie Ihre Musik-Apps auf das nächste Level!

Android MediaPlayer

Die MediaPlayer-Klasse wird zum Abspielen von Audio- und Videodateien verwendet. Die häufig verwendeten Methoden der MediaPlayer-Klasse sind:

  • start()
  • stop()
  • release() – Um Speicherlecks zu vermeiden.
  • seekTo(position) – Wird mit der SeekBar verwendet.
  • isPlaying() – Gibt an, ob das Lied abgespielt wird oder nicht.
  • getDuration() – Wird verwendet, um die Gesamtdauer zu ermitteln, die zur Bestimmung der oberen Grenze unserer SeekBar hilft. Diese Funktion gibt die Dauer in Millisekunden zurück.
  • setDataSource(FileDescriptor fd) – Wird verwendet, um die abzuspielende Datei festzulegen.
  • setVolume(float leftVolume, float rightVolume) – Wird verwendet, um die Lautstärke einzustellen. Der Wert ist eine Gleitkommazahl zwischen 0 und 1.

Projektstruktur

Wir benötigen drei Dinge, um eine Anwendung zu erstellen, die Audio abspielt und Ihnen ermöglicht, die Position des aktuellen Liedes zu ändern:

  • MediaPlayer
  • SeekBar mit Text – Um die aktuelle Fortschrittszeit neben dem Thumb anzuzeigen.
  • Runnable Thread – Um die SeekBar zu aktualisieren.

Fazit

Durch das Klicken auf den FloatingActionButton wird die playSong-Funktion ausgelöst, bei der wir das Lied pausieren und den MediaPlayer zurücksetzen. Sobald mediaPlayer.prepare() aufgerufen wird, sind die Songdetails verfügbar. Wir können nun die Dauer abrufen und sie auf die maximale Position der SeekBar setzen. Wenn setLooping auf false gesetzt wird, wird verhindert, dass das Lied unendlich lange abgespielt wird, bis der Benutzer es stoppt. Wir starten den Thread, der die run-Methode auslöst, die Teil der von uns implementierten Runnable-Schnittstelle ist. Innerhalb der run-Methode aktualisieren wir den Fortschritt jede Sekunde, wodurch die onProgressChanged-Methode des SeekBar-Listeners ausgelöst wird. Wenn der Benutzer das Ziehen der SeekBar stoppt, wird onStopTrackingTouch ausgelöst, wobei wir die Songposition auf der MediaPlayer-Instanz mit der seekTo-Methode aktualisieren. Sobald das Lied abgeschlossen ist, setzen wir die Position der SeekBar zurück und geben die MediaPlayer-Instanz frei.

Schlusswort

Dieses Tutorial zeigt, wie Sie einen einfachen Audioplayer in Ihrer Android-Anwendung implementieren. Sie können das Projekt von GitHub herunterladen und das Lied selbst abspielen.

Kostenlosen Account erstellen

Registrieren Sie sich jetzt und erhalten Sie Zugang zu unseren Cloud Produkten.

Das könnte Sie auch interessieren: