La tarea aborda el desarrollo de una aplicación en Delphi para conectar un dispositivo a través de Bluetooth. Utilizando Object Pascal, se configura una conexión mediante el uso de un adaptador Bluetooth y un identificador único (
Introducción
Lenguaje de programación que se creó con el propósito de agilizar la creación de software basándolo en una programación visual. En el Delphi se utiliza una versión más actual del Pascal conocida como Object Pascal como lenguaje de programación.
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.StdCtrls,
Androidapi.JNI.BluetoothAdapter,
Androidapi.JNI.JavaTypes,
Androidapi.JNIBridge,
Android.JNI.Toast,
Androidapi.Helpers,
FMX.ListBox, FMX.Layouts, FMX.Memo, FMX.Edit, FMX.Objects, FMX.ListView.Types,
FMX.ListView, System.Rtti, FMX.Grid, Data.Bind.GenData,
System.Bindings.Outputs, Fmx.Bind.Editors, Data.Bind.EngExt,
Fmx.Bind.DBEngExt, Data.Bind.Components, Data.Bind.ObjectScope,
FMX.Controls.Presentation;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Timer1: TTimer;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
StyleBook1: TStyleBook;
Label4: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
targetMAC:string; // MAC ADRESS del bluetooth
ostream:JOutputStream; // variable de salida para bluetooth
istream:JInputstream; // variable de entrada para bluetooth
uid:JUUID; // variable del dispositivo identificador universal unico
Sock:JBluetoothSocket; // variable de tipo clase
Adapter:JBluetoothAdapter; // variable del adaptador local bluetooth
remoteDevice:JBluetoothDevice; // variable de tipo clase
bandera:boolean;
end;
SE IMPORTAN LAS LIBRERÍAS DE ANDROID Y SE VAN AGREGANDO POCO AL PROCEDIMIENTO PRINCIPAL
tarea 3 micro
IMPLEMENTACIÓN
var
s:string;
begin
s:=checkBluetooth; // habilita el bluetooth
Toast(s); // imprime si el bluetooth esta habilitado
//dispositivo identificador universal unico UID
uid:=TJUUID.JavaClass.fromString(stringtojstring('00001101-0000-1000-8000-00805F9B34FB'));
targetMAC:='00:18:E4:40:00:06'; // MAC ADRESS del bluetooth
if trim(targetMAC)='' then
exit;
Adapter:=TJBluetoothAdapter.JavaClass.getDefaultAdapter;
remoteDevice:=Adapter.getRemoteDevice(stringtojstring(targetMAC));
Toast('Conectando...');
sock:=remoteDevice.createRfcommSocketToServiceRecord(UID);
try sock.connect;
except Toast('No hay servicio!');
end;
if not sock.isConnected then
begin
Toast('coneccion faida '+targetMAC+'! intente despues...');
exit;
end;
Toast('conectado!');
BUTTON1.TintColor:=$FF00FC9A;
button1.Text:='Conectado';
bandera:=true;
ostream:=sock.getOutputStream; // asigna la variable como salida
istream:=sock.getInputStream; // asigna la variable como entrada
TIMER1.Enabled:=TRUE;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
if bandera=true then
begin
ostream.write(ord(43)); // envia el caracter '+' = #43
button1.TintColor:=0;
close();
end else
begin
button1.TintColor:=0;
close(); // cierra la aplicacion
end;
end;
SE CONECTAN AL MODULO BLUETOOTH
Marco Teórico
Antes conocido como CodeGear Delphi, Inprise Delphi y Borland Delphi, es un entorno de desarrollo de software diseñado para la programación de propósito general con énfasis en la programación visual. En Delphi se utiliza como lenguaje de programación una versión moderna de Pascal llamada Object Pascal.
Conclusiones
• Cualquiera de sus versiones se puede programar DLLs.
• En Delphi podemos programar directamente los componentes visuales e incluso crear nuevos controles que hereden características de los ya existentes.
• También podemos utilizar en el Delphi componentes visuales de otros lenguajes de programación.
Recomendaciones
Programar bien.
Ordenar bien los procedimientos.