Autor Beitrag
rotalosi
Hält's aus hier
Beiträge: 12
Erhaltene Danke: 1



BeitragVerfasst: Di 26.05.15 11:17 
Hallo,

ich lese hier schon lange mit und habe bisher eigentlich immer Lösungen für meine Probleme gefunden. Nun habe ich aber eines bei dem ich nicht weiter komme.

Ich programmiere schon recht lange in Delphi und besitze im Moment XE2. Jetzt möchte ich aber auch eine App für Android programmieren und habe mir die Trial-Version von XE8 herunter geladen.

Meine App muss im Grunde nicht viel anderes machen als ein paar Zeichen an ein Gerät zu senden und dann welche zu empfangen. Die Zeichen sollen in Form eines Strings mit CR/LF am Ende geschickt werden. Ich habe mir also die Demos rausgesucht (Classic Bluetooth Demo), compiliert und auf dem Android installiert. Das Android Smartphone ist bereits mit dem Bluetooth-Gerät gepaired und mit Blueterm funktioniert es auch. Die X8 App funktioniert aber "nur ein weinig". D.h das "Discover devices" funktioniert. Er zeigt mir die "Paired Devices" an und auch die richtigen "Services" in diesem Fall SerialPort.

Wenn ich aber versuche jetzt einen Text hinzuschicken mit send text to "BTDEVICE" bekomme ich nach einem Moment eine Fehlermeldung. java.io.IOException: read failed, socket might close or timeout, read ret -1

Ich habe das Ganze auf einen Xperia Z3C mit 5.0.0 auf einem Samsaung Galaxy Tab und einem NoName Tab mit jeweils Android 4.2.2 probiert. Überall die gleiche Fehlermeldung.

Bei Google und auch hier habe ich nichts zu dem Thema gefunden. Mache ich irgend etwas grundlegend falsch, habe ich was falsch verstanden oder ist es schlicht nicht möglich mit XE8 über Bluetooth ein Serielles Bluetooth Device anzusprechen?

Ich wäre für jeden Tip dankbar.

Gruß Frank
Frühlingsrolle
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2274
Erhaltene Danke: 419

[Win NT] 5.1 x86 6.1 x64
[Delphi] 7 PE, 2006, 10.1 Starter, Lazarus - [C#] VS Exp 2012 - [Android API 15] VS Com 2015, Eclipse, AIDE - [C++] Builder 10.1
BeitragVerfasst: Di 26.05.15 19:47 
Hallo und :welcome: rotalosi!

Ich kann dir praktisch nicht sagen ob und wie es mit der Entwicklungsumgebung funktioniert, aber mit Entwicklungsumgebungen wie z.B.: Eclipse (inkl. Android Plugin) dürftest du dir möglicherweise leichter tun.
Zudem ist das Netz voll von Beispielen die 1:1 zu übernehmen sind und auch funktionieren.
Interessante Anlaufstellen wären Link1 und Link2.
Irgendwann habe ich mal folgendes Lesezeichen zwischengespeichert, welches einen BluetoothChat behandelt.

Gutes Gelingen.

_________________
„Politicians are put there to give you the idea that you have freedom of choice. You don’t. You have no choice. You have owners. They own you. They own everything." (George Denis Patrick Carlin)
rotalosi Threadstarter
Hält's aus hier
Beiträge: 12
Erhaltene Danke: 1



BeitragVerfasst: Mi 27.05.15 09:43 
Hallo,

den größten Teil der Programme die auf Android portiert werden sollen, habe ich schon als Windows Programme (mit Delphi) geschrieben. Ich hatte mir erhofft den größten Teil des Codes aus den Windowsprogrammen nutzen zu können. Aber so einfach funktioniert das scheinbar nicht. Das einzige was ich gefunden habe war ein Code für XE6. Diesen habe ich nach einigen Änderungen halbwegs ans laufen bekommen.

Mir wird wohl nichts anderes übrig bleiben als Java zu nutzen. So richtig ausgereift scheint das programmieren für mobile Geräte mit Delphi jedenfalls nicht zu sein. Es sieht auch nicht so aus, als ob das viele machen. Es gibt kaum mal einen Forumseintrag o.ä.

Gruß Frank
Xion
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
EE-Maler
Beiträge: 1952
Erhaltene Danke: 128

Windows XP
Delphi (2005, SmartInspect), SQL, Lua, Java (Eclipse), C++ (Visual Studio 2010, Qt Creator), Python (Blender), Prolog (SWIProlog), Haskell (ghci)
BeitragVerfasst: Sa 30.05.15 12:23 
Ich kenne mich weder mit Android noch mit Bluetooth aus, aber es scheint mir nicht fair, bei einer Java.lang.IOException ausgerechnet Delphi die Schuld zu geben ;)

Die Suche nach deinem Fehler bei Google gibt mir folgenden ersten Treffer:
programming.nullanswer.com/forum/6600191
Dort wird im wesentlichen gesagt, du musst warten, bis der Discovery Mode abgeschlossen ist.

_________________
a broken heart is like a broken window - it'll never heal
In einem gut regierten Land ist Armut eine Schande, in einem schlecht regierten Reichtum. (Konfuzius)