2012-09-07 17 views
13

從我的android應用程序我想流音頻到任何可用的揚聲器,如A2DP揚聲器,docking揚聲器或car揚聲器。從Android應用程序的流和播放音頻像A2DP,汽車揚聲器等任何可用的揚聲器

這樣做我想用藍牙連接和流過藍牙連接...

我看到以下鏈接

On android how to reroute audio from a2dp

setBluetoothA2dpOn (boolean on)

Android 2.3: How do I switch from SCO to A2DP for a capable Bluetooth speaker?

但處處我發現相同..即

public void setBluetoothA2dpOn (boolean on) 

This method is deprecated. 
Do not use. 

請指導我如何做到這一點..或建議如果可以用其他方式完成.. 任何幫助/建議表示讚賞。

編輯

在明顯的權限:

<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> 

CODE:

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    layout = (RelativeLayout) findViewById(R.id.layout); 
    text = (TextView) findViewById(R.id.editText1); 
    scoSwitch = (ToggleButton) findViewById(R.id.switch1); 
    try { 
     mp1 = MediaPlayer.create(this, R.raw.jc_cm); 
     mp2 = MediaPlayer.create(this, R.raw.rp); 
     amanager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); 
     //amanager.setBluetoothA2dpOn(true); 
       } catch (IllegalArgumentException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } catch (IllegalStateException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
} 

public void onSCOswitch(View view){ 
    if (scoSwitch.isChecked()){ 
     amanager.setBluetoothScoOn(true); 
     amanager.startBluetoothSco(); 
     Log.d("Bluetooth", "SCO on"); 
     amanager.setMode(AudioManager.MODE_IN_COMMUNICATION); 
    } 
    else{ 
     amanager.stopBluetoothSco(); 
     amanager.setBluetoothScoOn(false); 
     amanager.setBluetoothA2dpOn(true); 
     Log.d("Bluetooth", "SCO off"); 
     amanager.setMode(AudioManager.MODE_NORMAL); 
    } 
} 
+0

什麼問題,你在使用本文檔.. http://developer.android.com/reference/android/bluetooth/BluetoothA2dp.html – Ronnie

+0

@ userSeven7s面對:我面臨的問題是我無法檢測到其他設備也A2DP或沒有,所以問題緩衝音頻 – Shruti

+0

粘貼一些代碼,你嘗試着... – Ronnie

回答

1

這裏是藍牙A2DP的服務的實現。你可以參考這個代碼並建立你自己的。

A2DP Bluetooth Service

+0

,但爲此我必須添加'<使用權限android:name =「android.permission.BLUETOOTH_ADMIN 「/>'和'<使用權限android:name =」android.permission.BLUETOOTH「/>'在清單中 – Shruti

相關問題