Free Bluetooth Remote Control Vehicle App Source Code For Delphi XE5 Firemonkey On Android

  

By Admin Jim McKeeth from Embarcadero has made the source code available (on Github) for a remote control vehicle app that uses Bluetooth for communication available. The code is for Delphi XE5 and AppMethod and runs on Android and probably Windows. Should also work with Delphi XE6 Firemonkey with not many changes. If you are interested in the full Bluetooth interface in Object Pascal for the Android SDK you should check out the Object Pascal Android SDK Interface project on Github. There are interface files for android.bluetooth.BluetoothAdapter, android.bluetooth.BluetoothDevice, and android.bluetooth.BluetoothServerSocket among others. Check out the documentation for Bluetooth on Android here. The app does not make use of Bluetooth discovery (but you could add that yourself) and instead has the MAC address of each device hard coded into. The code makes use of the TJBluetoothAdapter interface to the Android SDK for talking to Bluetooth. Here is some sample code for connecting to the Bluetooth vehicle with the app:
uses
Androidapi.JNI.BluetoothAdapter, Android.JNI.Toast, System.SysUtils;
function DoConnect(MACAddress: String; out istream: JInputstream;
out ostream: JOutputStream): Boolean;
var
uid: JUUID;
targetMAC: string;
Adapter: JBluetoothAdapter;
remoteDevice: JBluetoothDevice;
Sock: JBluetoothSocket;
begin
uid := TJUUID.JavaClass.fromString
(stringtojstring(‘00001101-0000-1000-8000-00805F9B34FB’));
targetMAC := MACAddress;
Adapter := TJBluetoothAdapter.JavaClass.getDefaultAdapter;
remoteDevice := Adapter.getRemoteDevice(stringtojstring(targetMAC));
Toast(‘Connecting to ‘ + targetMAC);
Sock := remoteDevice.createRfcommSocketToServiceRecord(uid);
try
Sock.connect;
except
Toast(‘Could not create service record!’);
Exit(False);
end;
if not Sock.isConnected then
begin
Toast(‘Failed to connect to ‘ + targetMAC + ‘! …read more

Via: FMXExpress

Comments are closed.