Android Audio Manager Tutorial

Du kan enkelt kontrollere ringevolum og ringeprofil dvs: (stille, riste, høyt etc) i android. Android gir Lydbehandling klasse som gir tilgang til disse kontrollene.

For å kunne bruke AndroidManager klasse, må du først opprette et objekt av Lydbehandling klasse ved å ringe getSystemService ()
metoden. Syntaksen er gitt nedenfor
privat Lydbehandling myAudioManager;. MyAudioManager = (Lydbehandling) getSystemService (Context.AUDIO_SERVICE);

Når du instantiate gjenstand for Lydbehandling klasse, kan du bruke setRingerMode
metode for å sette lyd- eller ringeprofil på enheten. Syntaksen er gitt nedenfor
myAudioManager.setRingerMode (AudioManager.RINGER_MODE_VIBRATE);.

Metoden setRingerMode tar et heltall som parameter. For hver modus, er et helt antall tildelte som vil skille mellom forskjellige moduser. De mulige modi er
Sr.NoMode &.; Description1 RINGER_MODE_VIBRATE

Denne modusen setter enheten ved vibrasjonsmodus.
2 RINGER_MODE_NORMAL

Denne modusen setter enheten ved normal (høyt) modus.
3 RINGER_MODE_SILENT

Denne modusen setter enheten i stille modus.

Når du har satt den modusen, kan du ringe getRingerMode ()
metode for å få sett tilstanden i systemet. Syntaksen er gitt nedenfor
int mod = myAudioManager.getRingerMode ();.

Bortsett fra getRingerMode metoden, finnes det andre metoder som er tilgjengelige i Lydbehandling klassen for å styre volum og andre modi. De er listet opp nedenfor
Sr.NoMethod &.; description1 adjustVolume (int retning, int flagg)

Denne metoden justerer volumet på den mest relevante stream
2 getMode ()

Denne metoden returnerer gjeldende audio modus
3 getStreamMaxVolume (int streamType)

Denne metoden returnerer den maksimale volumindeksen for en bestemt stream
4 getStreamVolume (int streamType)

Denne metoden returnerer gjeldende volumindeksen for en bestemt stream
5 isMusicActive ()

Denne metoden sjekker om noe musikk er aktiv.
6 startBluetoothSco ()

Denne metoden start Bluetooth Audio tilkobling SCO
7 stopBluetoothSco ()

Denne metoden stopp bluetooth SCO lydtilkobling.

Eksempel

Eksempelet nedenfor viser bruken av Lydbehandling klasse. Det kasser et program som lar deg sette forskjellige ringemodus for enheten.

For å eksperimentere med dette eksempelet, må du kjøre dette på en faktisk enhet.
StepsDescription1You vil bruke Android studio IDE å skape en Android søknad 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 Lydbehandling code3Modify layout XML fil res /layout /activity_main.xml legge noen GUI-komponent hvis required.4Modify res /verdier /string.xml fil og legge nødvendig streng components.5Modify AndroidManifest.xml å legge nødvendig permissions.6Run programmet og velge en som kjører Android-enhet, og installere programmet på den og verifisere resultatene. < p> Her er innholdet i src /MainActivity.java
pakken com.example.sairamkrishna.myapplication, import android.app.Activity, import android.content.Context; import android.media.AudioManager; import android.media.MediaPlayer, import android.media.MediaRecorder, import android.os.Bundle, import android.os.Environment, import android.view.Menu, import android.view.MenuItem, import android.view.View; import android.view.animation.Animation, import android.view.animation.AnimationUtils, import android.widget.Button, import android.widget.ImageView, import android.widget.Toast, import java.io.IOException; public class MainActivity strekker Aktivitet {Button modus, ring, vibrere, taus; private Lydbehandling myAudioManager; Override Beskyttet void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); setContentView (R.layout.activity_main); vibrere = (Button) findViewById (R.id.button3); ring = (Button) findViewById (R.id.button2); mode = (Button) findViewById (R.id.button); tause = (Button) findViewById (R.id.button4); myAudioManager = (Lydbehandling) getSystemService (Context.AUDIO_SERVICE); vibrate.setOnClickListener (ny View.OnClickListener () {Override public void onClick (Vis v) {myAudioManager.setRingerMode (AudioManager.RINGER_MODE_VIBRATE); Toast.makeText (MainActivity.this, "Nå i vibreringsmodus", Toast.LENGTH_LONG). vise(); } }); ring.setOnClickListener (ny View.OnClickListener () {Override public void onClick (Vis v) {myAudioManager.setRingerMode (AudioManager.RINGER_MODE_NORMAL); Toast.makeText (MainActivity.this, "Nå i Ringing Mode", Toast.LENGTH_LONG). vise(); } }); silent.setOnClickListener (ny View.OnClickListener () {Override public void onClick (Vis v) {myAudioManager.setRingerMode (AudioManager.RINGER_MODE_SILENT); Toast.makeText (MainActivity.this: "Nå i stille modus", Toast.LENGTH_LONG). vise(); } }); mode.setOnClickListener (ny View.OnClickListener () {Override public void onClick (Vis v) {int mod = myAudioManager.getRingerMode (); if (mod == AudioManager.RINGER_MODE_VIBRATE) {Toast.makeText (MainActivity.this: "Nå i vibreringsmodus ", Toast.LENGTH_LONG) .vis ();} else if (mod == AudioManager.RINGER_MODE_NORMAL) {Toast.makeText (MainActivity.this," Nå i Ringing Mode ", Toast.LENGTH_LONG) .vis (); } else {Toast.makeText (MainActivity.this, "Nå i vibrere modus", Toast.LENGTH_LONG) .vis ();}}}); }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); }}

Her er innholdet i activity_main.xml
< RelativeLayout xmlns: Android = "http://schemas.android.com/apk/res/android~~number=plural" 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: layout_width = "wrap_content" android: layout_height = "wrap_content" android: text = "Android Audio Recording" android: id = "+ id /textView" android: Tekststørrelse = "30dp" android: layout_alignParentTop = "true "android: layout_alignParentRight =" true "android: layout_alignParentEnd =" true "/> < TextView android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: text = "Tutorialspoint" android: id = "+ id /textView2" android: textcolor = "# ff3eff0f" android: Tekststørrelse = "35dp" android: layout_below = "+ id /textView" android: layout_centerHorizontal = "true" /> < Imageview android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: id = "+ id /bildeVis" android: src = "@ teikne /logo" android: layout_below = "+ id /textView2" android : layout_alignLeft = "+ id /textView2" android: layout_alignStart = "+ id /textView2" android: layout_alignRight = "+ id /textView2" android: layout_alignEnd = "+ id /textView2" /> < Button android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: text = "Mode" android: id = "+ id /knapp" android: layout_below = "+ id /bildeVis" android: layout_alignParentLeft = "true" android: layout_alignParentStart = "true" android: layout_marginTop = "59dp" /> < Button android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: text = "Ring" android: id = "+ id /knappen2" android: layout_alignTop = "+ id /knapp" android: layout_centerHorizontal = "true" /> < Button android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: text = "vibrere" android: id = "+ id /Button3" android: layout_alignTop = "+ id /knappen2" android: layout_alignRight = "+ id /textView" android: layout_alignEnd = "+ id /textView" /> < Button android: layout_width = "wrap_content" android: layout_height = "wrap_content" android: text = "Silent" android: id = "+ id /button4" android: layout_below = "+ id /knappen2" android: layout_alignLeft = "+ id /knappen2" android: layout_alignStart = "+ id /knappen2" /> < /RelativeLayout >

Her er innholdet i strings.xml
< resources > < string name = "APP_NAME" > My Application < /string > < string name = "hello_world" > Hei, verden <! /string > < string name = "action_settings" > Innstillinger < /string > < /ressurser >

Her er innholdet i AndroidManifest.xml
<? xml version = "1.0" encoding = "utf-8" > < manifest xmlns:? android = "http://schemas.android.com/apk/res/android" pakken = "com.example.audiomanager" android: version = "1" android : versjon = "1.0" > < 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" 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 Android Studio, åpne en av prosjektets aktivitets filer, og klikk Kjør ikonet fra verktøylinjen. Android studio vil vise Images

Nå velger lydløs-knappen, vil du få stille ikonet på varslingslinjen

Nå bare velge ringeknappen og trykk deretter gjeldende modus-knappen for å se at hvis sin status har er innstilt.

Nå trykker du på Vibrer knappen og trykk deretter gjeldende modus knappen for å se at hvis det er satt eller not.It vil vise følgende skjermbilde. Anmeldelser