2012-09-07 13 views
13

Z mojej aplikacji na Androida chcę przesyłać dźwięk do dowolnego głośnika, na przykład głośników A2DP, docking lub głośnika car.Przesyłaj strumieniowo i odtwarzaj dźwięk z aplikacji na Androida do dowolnego dostępnego głośnika, takiego jak A2DP, głośniki samochodowe itp.

za robienie tego chcę użyć połączenia Bluetooth i strumień przez połączenie Bluetooth ...

Widziałem poniższych linków

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?

ale wszędzie Znalazłem to samo .. tj.

public void setBluetoothA2dpOn (boolean on) 

This method is deprecated. 
Do not use. 

proszę kierować do mnie, jak to zrobić this..Or sugerują, jeśli można to zrobić za pomocą jakiś inny sposób .. Każda pomoc/sugestia jest mile widziana.

EDIT:

ZGODA w manifeście:

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

KOD:

@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

Jakie problemy możesz napotkać podczas korzystania z tej dokumentacji .. http://developer.android.com/reference/android/bluetooth/BluetoothA2dp.html – Ronnie

+0

@ userSeven7s: problem jestem stoi jest jestem nie można wykryć, że inne urządzenie jest również A2DP lub nie, więc problem z buforowaniem audio – Shruti

+0

wkleić kod próbował z ... – Ronnie

Odpowiedz

1

Oto implementacja Bluetooth A2DP w Serwisie. Możesz polecić ten kod i zbudować własny.

A2DP Bluetooth Service

+0

ale do tego muszę dodać '" i "' w manifeście – Shruti