Android Interview Questions - SPLessons

Android AudioManager

Home > Lesson > Chapter 13
SPLessons 5 Steps, 3 Clicks
5 Steps - 3 Clicks

Android AudioManager

Android AudioManager

Android AudioManager class provides access to various control modes and allows you to easily control your ringer volume and ringer profile. In order to use AndroidManager class, you have to first create an object of AudioManager class by calling the getSystemService()method. And, you will have to invoke setRingerMode() method by passing the type of ringer mode as a parameter. The syntax is given below: Ex:
AudioManager manager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
manager.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
The following example illustrates how to programmatically set silent, vibrate and ring modes in your application. First create MainActivity.java under src/<your packagename>. MainActivity.java: [java] public class MainActivity extends Activity { AudioManager manager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //set activity content to external views setContentView(R.layout.activity_main); //find views by Id Button ring=(Button)findViewById(R.id.button11); Button silent=(Button)findViewById(R.id.button12); Button vibrate=(Button)findViewById(R.id.button133); Button mode=(Button)findViewById(R.id.button14); manager = (AudioManager)getSystemService(Context.AUDIO_SERVICE); //on click ring ring.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub manager.setRingerMode(AudioManager.RINGER_MODE_NORMAL); } }); //on click silent silent.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { manager.setRingerMode(AudioManager.RINGER_MODE_SILENT); } }); //on click vibrate vibrate.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub manager.setRingerMode(AudioManager.RINGER_MODE_VIBRATE); } }); //on click get mode mode.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View arg0) { int mode=manager.getRingerMode(); if(mode==AudioManager.RINGER_MODE_NORMAL) { Toast.makeText(getApplicationContext(), "Ring Mode", Toast.LENGTH_SHORT).show(); } else if(mode==AudioManager.RINGER_MODE_SILENT) { Toast.makeText(getApplicationContext(), "Silent Mode", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(getApplicationContext(), "Vibrate Mode", Toast.LENGTH_SHORT).show(); } } }); } } [/java] Create activity_main.xml under res/layout folder. activity_main.xml: [xml] &amp;lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" &amp;gt; &amp;lt;TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:layout_marginTop="15dp" android:text="AudiManager Example" /&amp;gt; &amp;lt;Button android:id="@+id/button11" android:layout_width="70dp" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_below="@+id/textView1" android:layout_marginLeft="16dp" android:background="#009ACD" android:layout_marginTop="124dp" android:text="Ring" /&amp;gt; &amp;lt;Button android:id="@+id/button12" android:layout_width="70dp" android:layout_height="wrap_content" android:layout_alignBaseline="@+id/button11" android:layout_alignBottom="@+id/button11" android:background="#009ACD" android:layout_centerHorizontal="true" android:text="Silent" /&amp;gt; &amp;lt;Button android:id="@+id/button14" android:layout_width="70dp" android:layout_height="wrap_content" android:layout_alignRight="@+id/button12" android:layout_below="@+id/button12" android:layout_marginTop="31dp" android:background="#009ACD" android:text="Get Mode" /&amp;gt; &amp;lt;Button android:id="@+id/button133" android:layout_width="70dp" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_alignTop="@+id/button12" android:layout_marginRight="19dp" android:background="#009ACD" android:text="Vibrate" /&amp;gt; &amp;lt;/RelativeLayout&amp;gt; [/xml] AndroidManifest.xml: [xml] &amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt; &amp;lt;manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.spl.myproject" android:versionCode="1" android:versionName="1.0" &amp;gt; &amp;lt;uses-sdk android:minSdkVersion="8" android:targetSdkVersion="16" /&amp;gt; &amp;lt;application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" &amp;gt; &amp;lt;activity android:name="com.spl.myproject.MainActivity" android:label="@string/app_name" &amp;gt; &amp;lt;intent-filter&amp;gt; &amp;lt;action android:name="android.intent.action.MAIN" /&amp;gt; &amp;lt;category android:name="android.intent.category.LAUNCHER" /&amp;gt; &amp;lt;/intent-filter&amp;gt; &amp;lt;/activity&amp;gt; &amp;lt;/application&amp;gt; &amp;lt;/manifest&amp;gt; [/xml] Output: