有線耳機的情況
//切換為揚聲器
audiomanager audiomanager =
(audiomanager)
this
.getsystemservice
(context.audio_service)
;
audiomanager.
setmicrophonemute
(false
);
audiomanager.
setspeakerphoneon
(true);
//使用揚聲器外放,即使已經插入耳機
//setvolumecontrolstream(audiomanager.stream_music);//控制聲音的大小
audiomanager.
setmode
(audiomanager.stream_music)
;
//切換為耳機
maudiomanager.
setspeakerphoneon
(false
);
android:name
="android.permission.modify_audio_settings"
>
uses-permission
>
/**
* 關閉揚聲器
*/private
void
offspeaker()
log.i(
"zxg"
,"isbluetoothsco 2:"
+ maudiomanager.
isbluetoothscoon()
);maudiomanager.
setmode
(audiomanager.mode_in_communication);if
(isbluetoothheadsetconnected()
)//關閉揚聲器
maudiomanager.
setspeakerphoneon
(false);
}
/**
* 開啟揚聲器
*/private
void
speaker()
// maudiomanager.setmicrophonemute(false);
//關閉scoif(
isbluetoothheadsetconnected()
)//開啟揚聲器
maudiomanager.
setspeakerphoneon
(true);
maudiomanager.
setmode
(audiomanager.stream_music)
; log.i(
"zxg"
,"isbluetoothsco 1:"
+ maudiomanager.
isbluetoothscoon()
);}
/**
* 判斷藍芽耳機是否連線
* @return
*/private
boolean
isbluetoothheadsetconnected()
return
false
;}
需要注意的是,開啟/關閉sco是非同步的,並不是馬上完成的,所以我們需要監聽系統廣播,收到相關廣播後繼續進行後續邏輯操作。在具體邏輯**中可以通過maudiomanager.isbluetoothscoon()判斷sco狀態,以及在廣播中更新標記位來記錄sco狀態
/**
* 監聽sco變化廣播
*/private
void
registerbluetoothbroadcast()
},newintentfilter
(audiomanager.action_sco_audio_state_updated));
}
操作藍芽需要申請如下許可權
android:name
="android.permission.bluetooth"
/>
android:name
="android.permission.bluetooth_admin"
/>
android音訊輸出通道切換 -藍芽 外放
android插入耳機狀態使用揚聲器外放**
藍芽連線的sco問題
android藍芽耳機使用
揚聲器切換
睡不著啊 想著就把之前的乙個指令碼更新了。此bat用於切換筆記本的揚聲器和外界顯示器的揚聲器,之前寫的是兩個指令碼,頻繁切換時就會顯得比較麻煩。這次更新後,只需輸入相同命令便可以在揚聲器間切換。注 1.ni 為nircmd2.此次主要利用檔案作為命令參考開關 speaker1 6 26 2015 5...
揚聲器選擇
8歐10w的喇叭和4歐10w的喇叭到底有哪些區別?答 阻抗小的喇叭,靈敏度高 電流變化大 容易推 所謂喇叭的額定功率是10w,是指的是喇叭最大需要10w還是指正常工作的時候就是需要的10w?答 一般喇叭的功率是瞬時正弦波最大功率,持續的承受功率應該在1 4左右 假如我驅動的是8 歐10w的喇叭,我是...
Ubuntu 12 04耳機無聲 揚聲器有聲的解決
今天公升級到12.04之後,各方面都正常,但是後來想聽歌的時候,開始用耳機,發現即使音量調最大,仍然無聲。後來把耳機拔了,發現有聲音。那可能就是 配置不對吧。解決辦法,在終端執行alsamixer 然後把游標移動到headphone,往上動一動就好了。www.2cto.com 不過後來我還有乙個操作...