Introducción

En este módulo, aprenderás a desarrollar aplicaciones móviles utilizando Delphi. Delphi proporciona un entorno robusto y herramientas potentes para crear aplicaciones móviles nativas para iOS y Android. Exploraremos cómo configurar tu entorno de desarrollo, crear interfaces de usuario móviles, y utilizar las características específicas de los dispositivos móviles.

Configuración del Entorno de Desarrollo

Antes de comenzar a desarrollar aplicaciones móviles, es crucial configurar correctamente tu entorno de desarrollo.

Pasos para Configurar el Entorno:

  1. Instalar Delphi: Asegúrate de tener la última versión de Delphi instalada.
  2. Instalar los SDKs de iOS y Android:
    • Para iOS, necesitarás Xcode instalado en una máquina macOS.
    • Para Android, instala Android Studio y configura el SDK.
  3. Configurar el Entorno de Desarrollo:
    • En Delphi, ve a Tools > Options > Deployment > SDK Manager.
    • Añade los SDKs de iOS y Android.

Creación de una Aplicación Móvil Básica

Vamos a crear una aplicación móvil básica que muestre un mensaje de bienvenida.

Paso 1: Crear un Nuevo Proyecto

  1. Abre Delphi.
  2. Selecciona File > New > Multi-Device Application - Delphi.
  3. Elige una plantilla en blanco y haz clic en OK.

Paso 2: Diseñar la Interfaz de Usuario

  1. En el Form Designer, arrastra un TLabel desde la Tool Palette al formulario.
  2. Cambia la propiedad Text del TLabel a "¡Bienvenido a mi aplicación móvil!".

Paso 3: Configurar la Plataforma de Destino

  1. En el Project Manager, haz clic derecho en el proyecto y selecciona Add Platform.
  2. Añade las plataformas iOS y Android.

Paso 4: Compilar y Ejecutar

  1. Selecciona la plataforma de destino (iOS o Android) en la barra de herramientas.
  2. Haz clic en Run para compilar y ejecutar la aplicación en un emulador o dispositivo físico.
unit Unit1;

interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.Controls.Presentation, FMX.StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.fmx}

end.

Utilización de Características Específicas de Dispositivos Móviles

Acceso a Sensores

Delphi permite acceder a varios sensores del dispositivo, como el acelerómetro, giroscopio y GPS.

Ejemplo: Acceso al Acelerómetro

  1. Añade un TTimer y un TLabel al formulario.
  2. Configura el Interval del TTimer a 100 ms.
  3. En el evento OnTimer del TTimer, añade el siguiente código:
uses
  System.Sensors;

procedure TForm1.Timer1Timer(Sender: TObject);
var
  Accel: TCustomMotionSensor;
begin
  Accel := TSensorManager.Current.GetSensorByCategory(TSensorCategory.Motion) as TCustomMotionSensor;
  if Assigned(Accel) and Accel.Active then
  begin
    Label1.Text := Format('X: %f, Y: %f, Z: %f', [Accel.Sensor.AccelerationX, Accel.Sensor.AccelerationY, Accel.Sensor.AccelerationZ]);
  end;
end;

Acceso a la Cámara

Puedes utilizar la cámara del dispositivo para capturar imágenes o video.

Ejemplo: Captura de Imagen

  1. Añade un TButton y un TImage al formulario.
  2. En el evento OnClick del TButton, añade el siguiente código:
uses
  FMX.Media;

procedure TForm1.Button1Click(Sender: TObject);
var
  Camera: TCameraComponent;
begin
  Camera := TCameraComponent.Create(Self);
  try
    Camera.Kind := TCameraKind.BackCamera;
    Camera.OnSampleBufferReady := procedure(Sender: TObject; const ATime: TMediaTime)
    begin
      TThread.Synchronize(nil, procedure
      begin
        Camera.SampleBufferToBitmap(Image1.Bitmap, True);
      end);
    end;
    Camera.Active := True;
  finally
    Camera.Free;
  end;
end;

Ejercicio Práctico

Ejercicio: Crear una Aplicación de Notas

Objetivo: Crear una aplicación móvil que permita al usuario agregar, editar y eliminar notas.

Requisitos:

  1. Interfaz de Usuario:

    • Un TListBox para mostrar las notas.
    • Un TButton para agregar una nueva nota.
    • Un TEdit para editar el contenido de la nota seleccionada.
    • Un TButton para eliminar la nota seleccionada.
  2. Funcionalidad:

    • Al hacer clic en el botón de agregar, se debe añadir una nueva nota a la lista.
    • Al seleccionar una nota de la lista, su contenido debe aparecer en el TEdit para su edición.
    • Al hacer clic en el botón de eliminar, se debe eliminar la nota seleccionada.

Solución:

unit Unit1;

interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.Controls.Presentation, FMX.StdCtrls,
  FMX.Edit, FMX.ListBox;

type
  TForm1 = class(TForm)
    ListBox1: TListBox;
    Edit1: TEdit;
    ButtonAdd: TButton;
    ButtonDelete: TButton;
    procedure ButtonAddClick(Sender: TObject);
    procedure ButtonDeleteClick(Sender: TObject);
    procedure ListBox1Change(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.fmx}

procedure TForm1.ButtonAddClick(Sender: TObject);
begin
  ListBox1.Items.Add('Nueva Nota');
end;

procedure TForm1.ButtonDeleteClick(Sender: TObject);
begin
  if ListBox1.ItemIndex >= 0 then
    ListBox1.Items.Delete(ListBox1.ItemIndex);
end;

procedure TForm1.ListBox1Change(Sender: TObject);
begin
  if ListBox1.ItemIndex >= 0 then
    Edit1.Text := ListBox1.Items[ListBox1.ItemIndex];
end;

end.

Conclusión

En este módulo, hemos cubierto los conceptos básicos del desarrollo móvil con Delphi, incluyendo la configuración del entorno de desarrollo, la creación de una aplicación móvil básica, y el uso de características específicas de dispositivos móviles. Con estos conocimientos, estás preparado para explorar más a fondo el desarrollo de aplicaciones móviles complejas y ricas en funcionalidades.

En el próximo módulo, profundizaremos en el despliegue de aplicaciones móviles, donde aprenderás a empaquetar y distribuir tus aplicaciones para iOS y Android.

Curso de Programación en Delphi/Object Pascal

Módulo 1: Introducción a Delphi/Object Pascal

Módulo 2: Estructuras de Control y Procedimientos

Módulo 3: Trabajando con Datos

Módulo 4: Programación Orientada a Objetos

Módulo 5: Características Avanzadas de Delphi

Módulo 6: Desarrollo de GUI con VCL y FMX

Módulo 7: Desarrollo Web y Móvil

Módulo 8: Mejores Prácticas y Patrones de Diseño

Módulo 9: Proyecto Final

© Copyright 2024. Todos los derechos reservados