1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

[Bluetooth] Datei senden ohne Pairing

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von Jask, 19.12.2010.

  1. Jask, 19.12.2010 #1
    Jask

    Jask Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    65
    Erhaltene Danke:
    1
    Registriert seit:
    12.06.2010
    Hallo,
    ich möchte in meine App eine Funktion einbauen, die es dem Benutzer ermöglicht, eine Datei mit Bluetooth
    zu versenden.
    Ich finde es aber sehr störend, dass man dabei das sendende Handy mit dem empfangenden Handy/PC pairen muss.
    Offensichtlich kann man das Pairing mit Java Code allein und der Bluetooth Api von Android aber nicht deaktivieren.
    Ich habe schon haufenweise Postings im Netz gefunden, bei denen Programmierer vor einem ähnlichen Problem standen und scheinbar auch
    keine Lösung gefunden hatten. Allerdings ging es da größtenteils um automatisches Pairing.
    Ich könnte nun durch meine App die Systeminterne Bluetoothweiterleitung aufrufen und die Datei damit versenden.
    Dann gehts scheinbar auch ohne Pairing, aber die Lösung finde ich nicht so besonders geeignet.
    Ich würde nämlich den Suchen und Senden-Prozess gern komplett in meine App einbauen, um auch die Möglichkeit zu bekommen,
    das Ganze auch optisch anpassen zu können.
    Ich habe auf meinem Desire die App "Bluetooth File Transfair" installiert und gesehen, dass dort zumindest die Liste mit den
    gefunden Bluetooth-Handys selbst gemacht wurde. So scheint es jedenfalls.
    Kann mir wohl jemand sagen, wie man so was machen kann?
     
  2. enrem, 20.12.2010 #2
    enrem

    enrem Erfahrener Benutzer

    Beiträge:
    188
    Erhaltene Danke:
    13
    Registriert seit:
    17.01.2010
  3. Jask, 20.12.2010 #3
    Jask

    Jask Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    65
    Erhaltene Danke:
    1
    Registriert seit:
    12.06.2010
    Hi enrem,
    Sorry, eventuell habe ich mich missverständlich ausgedrückt.
    Ich weiß, wie man eine Liste erstellt, aber das ist nicht direkt der Punkt.

    Ich machs mal ganz kurz und stelle die Frage mal ganz dumm.
    Wenn ich mit der App "BT File Transfair" eine Datei senden will, brauche ich die jeweiligen Handys _nicht_ pairen.
    Das geht aber eigentlich nicht, denn man _muss_ (leider!) die Handys erst pairen, bevor man eine Datei senden kann.
    Zumindest wenn man es mit Java macht und die Verbindung mit
    Code:
    device.createRfcommSocketToServiceRecord(MY_UUID)
    herstellen möchte.
    Nun die Frage:
    Wie macht das die App "BT File Transfair", daß man sich das nervige Pairing sparen kann und seine Datei ganz normal senden und empfangen kann?
    Wird dort mit nativem Code gearbeitet oder wie könnte das umgesetzt sein?
     
  4. enrem, 20.12.2010 #4
    enrem

    enrem Erfahrener Benutzer

    Beiträge:
    188
    Erhaltene Danke:
    13
    Registriert seit:
    17.01.2010
    Ich dachte eine Liste der gefunden Geräte würde dir reichen. Aber das stimmt mann muss die Geräte schon vorher Koppeln, sonst ist nix mit Daten senden.

    Sorry da bin ich überfragt. Sollte ich zufällig was finden denke ich an dich...

    Gruß enrem
     
  5. Lilithian, 20.12.2010 #5
    Lilithian

    Lilithian Android-Hilfe.de Mitglied

    Beiträge:
    69
    Erhaltene Danke:
    23
    Registriert seit:
    26.10.2010
    Von Bluetooth | Android Developers , hört sich für mich so an als würde das nicht einfach so gehen.
     
  6. enrem, 21.12.2010 #6
    enrem

    enrem Erfahrener Benutzer

    Beiträge:
    188
    Erhaltene Danke:
    13
    Registriert seit:
    17.01.2010
    Ich habe mir "Bluetooth File Transfair" installiert. Stimmt ich konnte eine Verindung zum Handy ohne Paring aufbauen. Ich konnte auch angeblich eine Datei versenden. Aber auf dem Handy kann ich keine von meinen gesendeten Daten finden.

    Wo legt "Bluetooth File Transfair" die beim Zielgerät ab?

    Möglich das du bei diesem Protokoll nicht pairen muss. Wie du bereits gefunden hast, scheint es mit RFCOMM nur mit pairen zu gehen.

    Gruß enrem
     
  7. Jask, 21.12.2010 #7
    Jask

    Jask Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    65
    Erhaltene Danke:
    1
    Registriert seit:
    12.06.2010
    Hi enrem
    Das ist nicht Sache von BTF, sondern des Empfängers.
    Wenn Du die Dateien an ein Handy sendest (pushst), entscheidet also das Handy über den Umgang mit der Datei und macht damit, was es für "richtig" hält. Für die Wahl des Speicherortes spielt für ein Handy die Dateiendung eine Rolle.
    Es gibt also keinen Standard-Speicherort. Einfach mal suchen.

    Nein, das hast Du missverstanden.
    Ich meinte, wenn man mit der Funktion
    einen Socket erstellt und damit dann die Verbindung aufbaut, gehts nicht (ohne Pairing).

    Das Pairing ist Sache von L2CAP und hat mit RFCOMM nichts zu tun.
    Ich denke, dass man mit Java oder nativem Code was machen kann.
    Vielleicht müßte man mal in dem Bluetooth.apk Source-Code stöbern.
     
  8. enrem, 21.12.2010 #8
    enrem

    enrem Erfahrener Benutzer

    Beiträge:
    188
    Erhaltene Danke:
    13
    Registriert seit:
    17.01.2010
    Das habe ich gemacht, allerdings nur auf der sdcard. Möglich das ich desshalb meine Test-Text-Datei nicht gefunden habe.

    Wenn du eine Lösung finden solltest, poste das doch bitte hier. Es würden dir sicherlich einige Leute dankbar sein.

    Gruß enrem
     

Diese Seite empfehlen