Android gir mange måter å styre avspilling av lyd /video-filer og bekker. En av denne måten er gjennom en klasse som heter  Mediaplayer 
. 
 
 Android leverer Mediaplayer klasse for å få tilgang innebygd mediaplayer tjenester som å spille lyd, video e.t.c. For å bruke Mediaplayer, må vi kalle en statisk metode  opprette () 
 i denne klassen. Denne metoden returnerer en forekomst av Mediaplayer klasse. Syntaksen er som følger − 
 Mediaplayer Mediaplayer = MediaPlayer.create (dette, R.raw.song); 
 Den andre parameteren er navnet på sangen du vil spille. Du må lage en ny mappe under prosjektet med navn  rå Hotell og plassere musikkfilen inn i den. 
 
 Når du har opprettet Mediaplayer objekt du kan ringe noen metoder for å starte eller stoppe musikk. Disse metodene er listet nedenfor 
 mediaPlayer.start ();. MediaPlayer.pause (); 
 På oppfordring til  start () 
 metoden, vil musikken begynner å spille fra begynnelsen. Hvis denne metoden kalles igjen etter  pause () 
 metoden, vil musikken begynner å spille fra der den blir stående og ikke fra begynnelsen. 
 
 For å starte musikk fra begynnelsen, du må ringe  reset () 
 metoden. Syntaksen er gitt nedenfor 
 mediaPlayer.reset ();. 
 Bortsett fra start og pause metode, det finnes andre metoder som tilbys av denne klassen for bedre håndtering av audio /video-filer. Disse metodene er listet nedenfor − 
 Sr.NoMethod & description1  isPlaying () 
 
 Denne metoden bare returnerer true /false indikerer sang spilles eller ikke anbefale 2  seekTo (stilling) 
 
 Denne metoden tar et heltall, og flytte sangen til den aktuelle andre 
 3  getCurrentDuration () 
 
 Denne metoden returnerer gjeldende posisjon for sangen i millisekunder 
 4  getDuration () 
 
 Dette Metoden returnerer den totale varigheten av sangen i millisekunder 
 5  reset () 
 
 Denne metoden tilbakemediespilleren 
 6  frigjøring () 
 
 Denne metoden utgivelser en ressurs festet med Mediaplayer objekt 
 7  setVolume (flyte leftVolume, flyte rightVolume) 
 
 Denne metoden setter opp ned volumet til denne spilleren 
 8  setDataSource (FileDescriptor fd) 
 
 Denne metoden setter datakilden for audio /video-fil 
 9  selectTrack (int indeks) 
 
 Denne metoden tar et heltall, og velg spor fra listen som bestemt indeks 
 10  getTrackInfo () 
 
 Denne metoden returnerer en matrise av sporinformasjon 
 
 Eksempel 
 
 Her er et eksempel som demonstrerer bruk av Mediaplayer klasse. Det skaper en grunnleggende mediespiller som lar deg forover, bakover, spille og pause en sang. 
 
For å eksperimentere med dette eksempelet, må du kjøre dette på en faktisk enhet for å høre lyden. Anmeldelser StepsDescription1You vil bruke Android studio IDE å lage en Android-applikasjon under en pakke com.example.sairamkrishna.myapplication;. Mens du oppretter dette prosjektet, må du Target SDK og kompilere med på den nyeste versjonen av Android SDK til å bruke høyere nivåer av APIs.2Modify src /MainActivity.java fil for å legge Mediaplayer code.3Modify res /layout /activity_main å legge respektive XML components4Create en ny mappe under Mediaplayer med navn som rå og legger inn en mp3-fil i det med navn som song.mp35Run programmet og velge en som kjører Android-enhet, og installere programmet på den og verifisere resultatene
 Følgende er innholdet av den modifiserte hovedaktivitet filen  src /MainActivity.java 
. 
 pakken com.example.sairamkrishna.myapplication, import android.app.Activity, import android.app.Activity, import android.graphics.Bitmap, import android.graphics.Color, import android.graphics.drawable.BitmapDrawable; import android.media.MediaPlayer, import android.os.Bundle, import android.os.Handler, import android.view.Menu, import android.view.MenuItem, import android.view.View, import android.widget.Button; import android .widget.ImageView, import android.widget.SeekBar, import android.widget.TextView, import android.widget.Toast, import java.util.concurrent.TimeUnit; public class MainActivity strekker Aktivitet {private Button b1, b2, b3, b4; private Imageview iv; private Mediaplayer Mediaplayer; privat dobbel Starttime = 0; privat dobbel finalTime = 0; privat Handler myHandler = new Handler ();; private int forwardTime = 5000; private int backwardTime = 5000; private seekbar seekbar; privat TextView TX1, TX2, TX3; public static int oneTimeOnly = 0; Override Beskyttet void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); b1 = (Button) findViewById (R.id.button); b2 = (Button) findViewById (R.id.button2); b3 = (Button) findViewById (R.id.button3); b4 = (Button) findViewById (R.id.button4); iv = (Imageview) findViewById (R.id.imageView); TX1 = (TextView) findViewById (R.id.textView2); TX2 = (TextView) findViewById (R.id.textView3); TX3 = (TextView) findViewById (R.id.textView4); tx3.setText ("Song.mp3"); Mediaplayer = MediaPlayer.create (dette, R.raw.song); seekbar = (seekbar) findViewById (R.id.seekBar); seekbar.setClickable (false); b2.setEnabled (false); b3.setOnClickListener (ny View.OnClickListener () {Override public void onClick (Vis v) {Toast.makeText (getApplicationContext (), "Spille lyd", Toast.LENGTH_SHORT) .vis (); mediaPlayer.start (); finalTime = mediaPlayer.getDuration (); Starttime = mediaPlayer.getCurrentPosition (); if (oneTimeOnly == 0) {seekbar.setMax ((int) finalTime); oneTimeOnly = 1;} tx2.setText (String.format ("% d min ,% d sec ", TimeUnit.MILLISECONDS.toMinutes ((lang) finalTime), TimeUnit.MILLISECONDS.toSeconds ((lang) finalTime) - TimeUnit.MINUTES.toSeconds (TimeUnit.MILLISECONDS.toMinutes ((lang) finalTime)))); tx1.setText (String.format ("% d min,% d sec", TimeUnit.MILLISECONDS.toMinutes ((lang) Starttime), TimeUnit.MILLISECONDS.toSeconds ((lang) Starttime) - TimeUnit.MINUTES.toSeconds (TIMEUNIT .MILLISECONDS.toMinutes ((long) starttid)))); seekbar.setProgress ((int) Starttime); myHandler.postDelayed (UpdateSongTime, 100); b2.setEnabled (true); b3.setEnabled (false); }}); b2.setOnClickListener (ny View.OnClickListener () {Override public void onClick (Vis v) {Toast.makeText (getApplicationContext (), "Pause sound", Toast.LENGTH_SHORT) .vis (); mediaPlayer.pause (); b2 .setEnabled (false); b3.setEnabled (true);}}); b1.setOnClickListener (ny View.OnClickListener () {Override public void onClick (Vis v) {int temp = (int) Starttime; if ((temp + forwardTime) < = finalTime) {Starttime = starttid + forwardTime; mediaplayer. seekTo ((int) Starttime); Toast.makeText (getApplicationContext (), "Du har hoppet frem 5 sekunder", Toast.LENGTH_SHORT) .vis ();} else {Toast.makeText (getApplicationContext (), "Kan ikke hoppe frem 5 sekunder ", Toast.LENGTH_SHORT) .vis ();}}}); b4.setOnClickListener (ny View.OnClickListener () {Override public void onClick (Vis v) {int temp = (int) Starttime; if ((temp-backwardTime)> 0) {Starttime = starttid - backwardTime; mediaPlayer.seekTo ( (int) Starttime); Toast.makeText (getApplicationContext (), "Du har hoppet bakover 5 sekunder", Toast.LENGTH_SHORT) .vis ();} else {Toast.makeText (getApplicationContext (), "Kan ikke hoppe bakover 5 sekunder" , Toast.LENGTH_SHORT) .vis ();}}}); } Private kjørbart UpdateSongTime = new kjørbart () {public void run () {Starttime = mediaPlayer.getCurrentPosition (); tx1.setText (String.format ("% d min,% d sec", TimeUnit.MILLISECONDS.toMinutes ((lang) Starttime), TimeUnit.MILLISECONDS.toSeconds ((lang) Starttime) - TimeUnit.MINUTES.toSeconds (TIMEUNIT. . millisekunder toMinutes ((lang) Starttime)))); seekbar.setProgress ((int) Starttime); myHandler.postDelayed (dette, 100); }}; Override Public boolean onCreateOptionsMenu (Meny menyen) {//Blås menyen; dette legger til elementer i handlingsfeltet hvis det er til stede. . getMenuInflater () blåse (R.menu.menu_main, menyen); return true; }Override Public boolean onOptionsItemSelected (MENUITEM element) {//Håndtak handlingen bar varen klikk her. Handlingsfeltet vil //automatisk håndtere klikker på Hjem /Opp-knappen, så lenge //som du angir en forelder aktivitet i AndroidManifest.xml. int id = item.getItemId (); //noinspection SimplifiableIfStatement if (id == R.id.action_settings) {return true; } Returnere super.onOptionsItemSelected (element); }} 
 Følgende er endret innholdet i xml  res /layout /activity_main.xml 
 < RelativeLayout xmlns:. android = "http://schemas.android.com/apk/res /Android "xmlns: verktøy =" http://schemas.android.com/tools "android: layout_width =" match_parent "android: layout_height =" match_parent "android: paddingLeft =" @ dimen /activity_horizontal_margin "android: paddingRight =" @ dimen /activity_horizontal_margin "android: paddingTop =" @ dimen /activity_vertical_margin "android: paddingBottom =" @ dimen /activity_vertical_margin "verktøy: kontekst =" MainActivity ">. < TextView android: text = "Music palyer" android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: id = "+ id /textview" android: Tekststørrelse = "35dp" android: layout_alignParentTop = "true" android: layout_centerHorizontal = "true" /> < TextView android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: text = "Tutorials point" android: id = "+ id /textView" android: layout_below = "+ id /textview" android: layout_centerHorizontal = "true" android: textcolor = "# ff7aff24" android: Tekststørrelse = "35dp" /> < Imageview android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: id = "+ id /bildeVis" android: layout_below = "+ id /textView" android: layout_centerHorizontal = "true" android: src = "@ teikne /abc" /> < Button android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: text = "> >" android: id = "+ id /knapp" android: layout_alignParentBottom = "true" android: layout_alignParentLeft = "true" android: layout_alignParentStart = "true" /> < Button android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: text = "||" android: id = "+ id /knappen2" android: layout_alignParentBottom = "true" android: layout_alignLeft = "+ id /bildeVis" android: layout_alignStart = "+ id /bildeVis" /> < Button android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: text = "<" android: id = "+ id /Button3" android: layout_alignTop = "+ id /knappen2" android: layout_toRightOf = "+ id /knappen2" android: layout_toEndOf = "+ id /knappen2" /> < Button android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: text = "< <" android: id = "+ id /button4" android: layout_alignTop = "+ id /Button3" android: layout_toRightOf = "+ id /Button3" android: layout_toEndOf = "+ id /Button3" /> < seekbar android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: id = "+ id /seekbar" android: layout_alignLeft = "+ id /textview" android: layout_alignStart = "+ id /textview" android: layout_alignRight = "+ id /textview" android: layout_alignEnd = "+ id /textview" android: layout_above = "+ id /knapp" /> < TextView android: "android: attr /textAppearanceSmall" layout_width = "wrap_content" android:: layout_height = "wrap_content" android textAppearance = android: text = "Small Text" android: id = "+ id /textView2" android: layout_above = "+ id /seekbar" android: layout_toLeftOf = "+ id /textView" android: layout_toStartOf = "+ id /textView" /> < TextView android: "android: attr /textAppearanceSmall" layout_width = "wrap_content" android:: layout_height = "wrap_content" android textAppearance = android: text = "Small Text" android: id = "+ id /textView3" android: layout_above = "+ id /seekbar" android: layout_alignRight = "+ id /button4" android: layout_alignEnd = "+ id /button4" /> < TextView android: "android: attr /textAppearanceMedium" layout_width = "wrap_content" android:: layout_height = "wrap_content" android textAppearance = android: text = "Medium Text" android: id = "+ id /textView4" android: layout_alignBaseline = "+ id /textView2" android: layout_alignBottom = "+ id /textView2" android: layout_centerHorizontal = "true" /> < /RelativeLayout > 
 Følgende er innholdet i  res /verdier /string.xml 
. < resources > < string name = "APP_NAME" > My Application < /string > < string name = "hello_world" > Hei, verden <! /string > < string name = "action_settings" > Innstillinger < /string > < /ressurser > 
 Følgende er innholdet av  AndroidManifest.xml 
 fil 
. <? xml version = "1.0 "encoding =" utf-8 "> < manifest xmlns:? android =" http://schemas.android.com/apk/res/android "pakken =" com.example.mediaplayer "android: version =" 1 "android: versjon =" 1.0 "> < bruker-SDK android: minSdkVersion = "13" android: targetSdkVersion = "22" /> < søknad android: allowBackup = "true" android: icon = "@ teikne /ic_launcher" android: label = "@ streng /APP_NAME" android: tema = "@ stil /AppTheme" > < aktivitet android: name = "com.example.sairamkrishna.myapplication.MainActivity" android: label = "@ streng /APP_NAME" > < intent-filter > < handling android: name = "android.intent.action.MAIN" /> < kategori android: name = "android.intent.category.LAUNCHER" /> < /intent-filter > < /aktivitets > < /søknad > < /manifest > 
 La oss prøve å kjøre programmet. Jeg antar at du har koblet den faktiske Android Mobile-enhet med datamaskinen. For å kjøre programmet fra Eclipse, åpne en av prosjektets aktivitets filer, og klikk Kjør ikonet fra verktøylinjen. Før du starter programmet, vil Android studio vise følgende skjerm 
 
 Som standard du ville se på pauseknappen deaktivert. Nå trykker play-knappen og det ville bli deaktiver og pause-knappen blir aktivert. Det er vist i bildet nedenfor − 
 
 Frem til nå, musikken har spilt. Nå trykker på pauseknappen og se pause varselet. Dette er vist nedenfor − 
 
 Nå når du trykker på play-knappen igjen, sangen vil ikke spille fra begynnelsen, men fra der den ble avbrutt. Nå trykker du på spol frem eller tilbake-knappen for å hoppe sangen fremover eller bakover 5 sekunder. En gang kom når sangen ikke kan hoppe fremover. På dette punktet, vil meldingen vises som ville være noe sånt som dette − 
 
 Din musikk ville forbli spilles i bakgrunnen mens du gjør andre oppgaver i mobilen din. For å stoppe den, må du avslutte dette programmet fra bakgrunnsaktiviteter. 
 
Over bildet viser når du plukker spole knappen. Anmeldelser

