Generar un UUID único en Xojo para Android

A continuación encontrarás traducido al castellano el artículo escrito por Martin T. y publicado originalmente en el Blog oficial de Xojo.

En el mundo del desarrollo de apps para dispositivos móviles es a menudo necesario generar un identificador universal único (UUID) para identificar de forma única tanto datos como dispositivos. Si eres un desarrollo Xojo creando apps para Android puedes generar con facilidad un UUID utilizando la siguiente función. Esta función utiliza la generación de UUID incluida en la clase de la librería Java de Android.

¿Qué es un UUID?

Un UUID (Universally Unique Identifier, Identificador Universal Único) es un valor de 128 bits que es único en todo el mundo. Los UUID se utilizan frecuentemente en el desarrollo de software para identificar los objetos y tienen el formato xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, donde cada “x” es un dígito en hexadecimal.

El código: GenerateUUID

El siguiente código muestra una función simple de Xojo que utiliza un método incorporado en Java sobre Android para la generación de un UUID. La función te permite crear el UUI tanto con guiones como sin ellos, en función de cuales sean los requerimientos de tu proyecto.

El Código:

Function GenerateUUID(useHyphens As Boolean = True) As String
' https://developer.android.com/reference/java/util/UUID
  Declare Function generateUUID Lib "java.util.UUID" Alias "randomUUID().toString" As CString
 
  Var uuid As String = generateUUID
 
  If useHyphens Then
    Return uuid
  Else
    Return uuid.ReplaceAll("-", "")
  End If
End Function

Explicación del Código:

  • Declare Function generateUUID: esta instrucción Declare nos proporciona acceso a la librería Java nativa de Android. Utilizamos el método compartido randomUUID de la clase java.util.UUID para generar un UUID aleatorio. Este método devuelve el UUID como String.
  • Var uuid As String = generateUUID: El UUID generado se almacena en una String.
  • useHyphens: este parámetro opcional control si el UUID se devuelve con guiones o sin ellos. El valor por omisión es True, lo que significa que el UUID se devolverá con su formato habitual, en el que se incluyen los guiones para separar el UUID por grupos.
  • If useHyphens Then … Else: en función del valor de useHyphens, se devolverá el UUID estándar o bien una versión sin guiones, donde se utiliza el método ReplaceAll para sustituir todos los guiones con una cadena vacía.

Uso en tus proyectos Android:

1. UUID con guiones: si quieres obtener el UUID en su formato estándar con guiones, llama a la función sin pasar ningún argumento:

Var myUUID As String = GenerateUUID 
' resultado de ejemplo: 123e4567-e89b-12d3-a456-426614174000

2. UUID sin guiones: si prefieres un UUID sin guiones, entonces pasa el argumento False a la función:

Var myUUID As String = GenerateUUID(False) 
' Resultado de ejemplo: 123e4567e89b12d3a456426614174000

¿Por qué usar UUIDs?

Los UUID son ideales para casos en los que necesitas asegurarte de que cada identificador generado sea único, incluso si han sido generados por diferentes dispositivos o sistemas. Algunos casos frecuentes en el desarrollo Android con Xojo son:

  • Identificar usuarios o dispositivos de forma única.
  • Crear claves en las entradas de bases de datos.
  • Etiquetar objetos en una aplicación distribuida donde no ha existir conflictos entre identificadores.

Con la función GenerateUUID puedes generar UUIDs únicos de forma fácil con Xojo en dispositivos Android, sin tener que preocuparte sobre las complejidades asociadas con las API nativas.

Este método se integra sin fisuras en tus aplicaciones Android y ofrece la flexibilidad para generar UUIDs tanto con guiones como sin ellos. Si estás trabajando en un proyecto donde resulte crítico identificar ítems de forma única, entonces el uso de UUIDs debería de ser el camino a tomar.

¡Buena suerte con tu proyecto Android en Xojo!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *