Android - Manajer Audio
Anda dapat dengan mudah mengontrol volume dering dan profil dering Anda yaitu: (diam, bergetar, keras dll) di android. Android menyediakan kelas AudioManager yang menyediakan akses ke kontrol ini.
Untuk menggunakan kelas AndroidManager, Anda harus membuat objek kelas AudioManager terlebih dahulu dengan memanggil getSystemService()metode. Sintaksnya diberikan di bawah ini.
private AudioManager myAudioManager;
myAudioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
Setelah Anda membuat instance objek kelas AudioManager, Anda dapat menggunakan setRingerModemetode untuk mengatur profil audio atau dering perangkat Anda. Sintaksnya diberikan di bawah ini.
myAudioManager.setRingerMode(AudioManager.RINGER_MODE_VIBRATE);
Metode setRingerMode menggunakan bilangan bulat sebagai parameter. Untuk setiap mode, nomor integer ditetapkan yang akan membedakan antara mode yang berbeda. Mode yang memungkinkan adalah.
Sr Tidak | Mode & Deskripsi |
---|---|
1 | RINGER_MODE_VIBRATE Mode ini menyetel perangkat pada mode getar. |
2 | RINGER_MODE_NORMAL Mode ini mengatur perangkat pada mode normal (keras). |
3 | RINGER_MODE_SILENT Mode ini mengatur perangkat pada mode senyap. |
Setelah Anda menyetel mode, Anda dapat memanggil getRingerMode()metode untuk mendapatkan keadaan set sistem. Sintaksnya diberikan di bawah ini.
int mod = myAudioManager.getRingerMode();
Selain metode getRingerMode, ada metode lain yang tersedia di kelas AudioManager untuk mengontrol volume dan mode lainnya. Mereka terdaftar di bawah ini.
Sr Tidak | Metode & deskripsi |
---|---|
1 | adjustVolume(int direction, int flags) Metode ini menyesuaikan volume aliran yang paling relevan |
2 | getMode() Metode ini mengembalikan mode audio saat ini |
3 | getStreamMaxVolume(int streamType) Metode ini mengembalikan indeks volume maksimum untuk aliran tertentu |
4 | getStreamVolume(int streamType) Metode ini mengembalikan indeks volume saat ini untuk aliran tertentu |
5 | isMusicActive() Metode ini memeriksa apakah ada musik yang aktif. |
6 | startBluetoothSco() Metode ini Mulai koneksi audio bluetooth SCO |
7 | stopBluetoothSco() Metode ini menghentikan koneksi audio bluetooth SCO. |
Contoh
Contoh di bawah ini menunjukkan penggunaan kelas AudioManager. Ini menciptakan aplikasi yang memungkinkan Anda mengatur mode dering yang berbeda untuk perangkat Anda.
Untuk bereksperimen dengan contoh ini, Anda perlu menjalankannya di perangkat yang sebenarnya.
Langkah | Deskripsi |
---|---|
1 | Anda akan menggunakan IDE studio Android untuk membuat aplikasi Android di bawah paket com.example.sairamkrishna.myapplication. |
2 | Ubah file src / MainActivity.java untuk menambahkan kode AudioManager |
3 | Ubah layout file XML res / layout / activity_main.xml tambahkan komponen GUI apa pun jika diperlukan. |
4 | Ubah file res / values / string.xml dan tambahkan komponen string yang diperlukan. |
5 | Ubah AndroidManifest.xml untuk menambahkan izin yang diperlukan. |
6 | Jalankan aplikasi dan pilih perangkat android yang sedang berjalan dan instal aplikasi di atasnya dan verifikasi hasilnya. |
Berikut adalah konten dari src/MainActivity.java
package com.example.sairamkrishna.myapplication;
import android.app.Activity;
import android.content.Context;
import android.media.AudioManager;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends Activity {
Button mode,ring,vibrate,silent;
private AudioManager myAudioManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
vibrate=(Button)findViewById(R.id.button3);
ring=(Button)findViewById(R.id.button2);
mode=(Button)findViewById(R.id.button);
silent=(Button)findViewById(R.id.button4);
myAudioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
vibrate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
myAudioManager.setRingerMode(AudioManager.RINGER_MODE_VIBRATE);
Toast.makeText(MainActivity.this,"Now in Vibrate Mode",
Toast.LENGTH_LONG).show();
}
});
ring.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
myAudioManager.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
Toast.makeText(MainActivity.this,"Now in Ringing Mode",
Toast.LENGTH_LONG).show();
}
});
silent.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
myAudioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT);
Toast.makeText(MainActivity.this,"Now in silent Mode",
Toast.LENGTH_LONG).show();
}
});
mode.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int mod=myAudioManager.getRingerMode();
if(mod==AudioManager.RINGER_MODE_VIBRATE){
Toast.makeText(MainActivity.this,"Now in Vibrate Mode",
Toast.LENGTH_LONG).show();
} else if(mod==AudioManager.RINGER_MODE_NORMAL){
Toast.makeText(MainActivity.this,"Now in Ringing Mode",
Toast.LENGTH_LONG).show();
} else {
Toast.makeText(MainActivity.this,"Now in Vibrate Mode",
Toast.LENGTH_LONG).show();
}
}
});
}
}
Berikut adalah konten dari activity_main.xml
Di sini abc menunjukkan logo tutorialspoint
<?xml version="1.0" encoding="utf-8"?>
<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"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Android Audio Recording"
android:id="@+id/textView"
android:textSize="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:textSize="35dp"
android:layout_below="@+id/textView"
android:layout_centerHorizontal="true" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageView"
android:src="@drawable/abc"
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/button"
android:layout_below="@+id/imageView"
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/button2"
android:layout_alignTop="@+id/button"
android:layout_centerHorizontal="true" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="vibrate"
android:id="@+id/button3"
android:layout_alignTop="@+id/button2"
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/button2"
android:layout_alignLeft="@+id/button2"
android:layout_alignStart="@+id/button2" />
</RelativeLayout>
Berikut adalah konten dari Strings.xml
<resources>
<string name="app_name">My Application</string>
</resources>
Berikut adalah konten dari AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.sairamkrishna.myapplication" >
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.sairamkrishna.myapplication"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
Mari coba jalankan aplikasi Anda. Saya berasumsi bahwa Anda telah menghubungkan perangkat Seluler Android Anda yang sebenarnya dengan komputer Anda. Untuk menjalankan aplikasi dari Android Studio, buka salah satu file aktivitas proyek Anda dan klik
Sekarang pilih tombol diam, Anda akan mendapatkan ikon diam di bilah Pemberitahuan
Sekarang cukup pilih tombol dering dan kemudian tekan tombol mode saat ini untuk melihat apakah statusnya telah diatur.
Sekarang tekan tombol Getar dan kemudian tekan tombol mode saat ini untuk melihat apakah sudah diatur atau tidak, maka akan muncul layar berikut.