Wie man Android-Handy als Bluetooth-Headset macht?

Ja, ich weiß, dass Android bereits das Bluetooth Headset-Profil implementiert hat, aber es ist in der Audio-Gateway-Rolle, nicht in der HeadSet-Rolle.

Was ich tun möchte, ist eine Anwendung auf Android-Handy zu entwickeln, die als Bluetooth-Headset fungieren wird, also kann es mit meinem Laptop von bluetooth verbinden. Wenn ich versuche, jemanden anzurufen, kann ich mein Telefon benutzen, um ihn zu wählen, und meine Anwendung wird die Stimme über Bluetooth an meinen Laptop weiterleiten, und eine andere Anwendung, die auf dem Laptop läuft, bekommt die Sprachdaten und leitet sie an Skype oder GTalk oder einige weiter VoIP-Programm sonst.

  • Android, Auswahl einer Cipher Suite
  • Wie konvertiere ich ein LatLng und einen Radius zu einem LatLngBounds in Android Google Maps API v2?
  • Neustart mit onResume-Methode neu starten
  • Android füllen PDF-Formular
  • Langsame App mit Hintergrundbild
  • Flicker mit StageVideo auf Android Tablet?
  • Mit anderen Worten, wie kann ich das Headset-Profil in Headset-Rolle auf Android-Handy implementieren? Danke im Voraus!

  • Fokus auf EditText in ListView, wenn Block Nachkommen (Android)
  • Wie zu finden Speicher Nutzung meiner Android-Anwendung geschrieben C + + mit NDK
  • Was ist der Unterschied zwischen DVM und ART? Warum wurde DVM offiziell mit ART in Lollipop ersetzt?
  • IntelliJ IDEA 12 doppelte Klasse R.java und BuildConfig.java
  • Gibt es eine Möglichkeit, den Overscroll-Glow-Effekt in der Listenansicht auf Lebkuchen zu überschreiben
  • So implementieren Sie OnFragmentInteractionListener
  • 2 Solutions collect form web for “Wie man Android-Handy als Bluetooth-Headset macht?”

    Von der Android-Seite, denke ich, die beste Lösung ist, um die Verbindung zum Service in Ihrem Computer zu öffnen:

     URL url = new URL("http://192.186.0.1/path/to/service"); URLConnection connection = url.openConnection(); 

    Holen Sie es als OutputStream:

     OutputStream out = new BufferedStream(connection.getOutputStream()); 

    Und benutze dann ein AudioRecord , um die aufgezeichneten Daten zu senden:

     public static final int DEFAULT_SAMPLE_RATE = 8000; private static final int DEFAULT_BUFFER_SIZE = 4096; private static final int CALLBACK_PERIOD = 4000; AudioRecord recorder = new AudioRecord(MediaRecorder.AudioSource.DEFAULT, DEFAULT_SAMPLE_RATE, AudioFormat.CHANNEL_CONFIGURATION_DEFAULT, AudioFormat.ENCODING_DEFAULT, DEFAULT_BUFFER_SIZE); recorder.setPositionNotificationPeriod(CALLBACK_PERIOD); int bytesRead = 0; ByteBuffer buffer = ByteBuffer.allocateDirect(DEFAULT_BUFFER_SIZE); while ((bytesRead = recorder.read(buffer, DEFAULT_BUFFER_SIZE)) > 0) { out.write(buffer.array(), 0, bytesRead); } 

    All dies sollte auf einem separaten Thread natürlich durchgeführt werden, um zu vermeiden, dass die App und ein Mechanismus zu behandeln, wenn die Aufnahme stoppt oder die Verbindung verloren geht. Auch ich bin mir ziemlich sicher, dass es über wifi arbeiten sollte, obwohl ich nicht sicher bin ob es das gleiche mit bluetooth sein wird (obwohl die meisten Geräte mit BT wifi jetzt einen Tag haben und du mehr Bandbreite bekommst)

    Ich habe diesen Code nicht getestet, also bin ich nicht 100% sicher, dass es funktionieren wird.

    Die nächste Sache wird auf der Maschine sein, um den Ton in die Wunsch-App zu übertragen, aber das ist über meine Erfahrung. Ich stelle mir vor, du musst einen virtuellen Fahrer oder so etwas machen. Auch muss der inverse Mechanismus für das Audio von der Desktop-App in das Telefon gesendet werden (ich bin eher interessiert an diesem Teil da würde ein nettes drahtloses Headset für das Ansehen von Filmen auch machen).

    Hier sind meine 2 Cent; Ich bin gespannt darauf, ob es funktioniert. 😉

    Ich weiß nicht, ob ich die echte Frage oder Ihr Hauptziel verstanden habe … aber ich hatte hier gepostet , wie ich den Ton von deinem Headset über bluetooth in android empfange und schicke.

    Ich hoffe dir zu helfen …

    Das Android ist ein Google Android Fan-Website, Alles über Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.