AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Comunicación / Funciones NFC
  • Utilización en modo de bloqueo (Sintaxis 1)
  • Utilización en modo no bloqueante (Sintaxis 2)
  • Otras notas
  • Permisos necesarios
  • AppID requerido
  • Aplicación en segundo plano: Caso específico a partir de Android 10
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Inicia la lectura de una etiqueta NFC o permite la detección de etiquetas NFC para la ventana actual.
Ejemplo
// Read an NFC tag in blocking mode
tag is nfcTag
tag = NFCReadTag()
IF NOT ErrorOccurred THEN
Info(StringBuild("Reading an NFC tag of %1 type", tag..Type))
FOR EACH data OF tag.Data
SWITCH data.Type
CASE nfcText
Info(data.Content)
CASE nfcURI
IF StringStartsWith(data.Content, "http") THEN
BrowserRunApp(data.Content)
END
CASE nfcMedia
IF data.MIMEType ~= "image/png" THEN
fSaveBuffer(CompleteDir(SysDirStorageCard()) + "image.png", data.Content)
END
END
END
END
// Read an NFC tag in non-blocking mode
IF NOT NFCReadTag(ReadNFCTag) THEN
Error("Failure starting the NFC detection.", ErrorInfo())
END
INTERNAL PROCEDURE ReadNFCTag(tag is nfcTag)
Info(StringBuild("A NFC tag of %1 type was detected.", tag.Type))
// Stop detection
RETURN True
END
Sintaxis
Android

Lectura de una etiqueta NFC en modo de bloqueo Ocultar los detalles

<Result> = NFCReadTag()
<Result>: nfcTag Variable
nfcTag Variable inicializada con la información leída en la etiqueta NFC.
Si se produce un error, la variable ErrorOccurred se establece en True. Para obtener más información sobre el error, utilice la función ErrorInfo.

Lectura de una etiqueta NFC en modo sin bloqueo Ocultar los detalles

<Result> = NFCReadTag(<WLanguage procedure>)
<Result>: booleano
  • True si se activó la detección de la etiqueta NFC,
  • False en caso contrario. Si se produce un error, la variable ErrorOccurred se establece en True. Para obtener más información sobre el error, utilice la función ErrorInfo.
<WLanguage procedure>: Nombre de Procedure
Nombre del WLanguage Procedure ("callback") llamado cuando se ha leído una etiqueta NFC. Este procedimiento tiene el siguiente formato:
PROCEDURE <Procedure Name> (<Tag>)
donde es un nfcTag Variable que contiene la información leída en la etiqueta NFC.
Observaciones:
  • Los parámetros de este Procedure son opcionales. No hay necesidad de pasarle parámetros a este Procedure. De hecho, estos parámetros se rellenan automáticamente durante cada llamada.
  • Si el procedimiento devuelve True, la detección de etiquetas NFC se detendrá automáticamente después de la lectura.
  • Si el procedimiento devuelve False o no devuelve ningún valor, la detección permanecerá activa mientras no se cierre la ventana en la que se activó el procedimiento.
Observaciones
Android

Utilización en modo de bloqueo (Sintaxis 1)

La llamada a NFCReadTag abre automáticamente una ventana para indicar a los usuarios que mantengan sus dispositivos más cerca de otro dispositivo habilitado para NFC. Esta ventana se cerrará automáticamente:
  • cuando el envío ha terminado
  • si el usuario cancela el envío pulsando la tecla Atrás del dispositivo.
    Observación: Para personalizar el mensaje que se muestra en la ventana, utilice la función NextTitle antes de llamar a la función NFCReadTag.

Utilización en modo no bloqueante (Sintaxis 2)

La llamada a NFCReadTag comienza a detectar las etiquetas NFC para la ventana actual en el momento de la llamada.
La detección será Active cuando esta ventana se muestre en el primer plano de la aplicación.
Cuando se cierra la ventana, la detección se detiene y deberá reiniciarse llamando a NFCReadTag.
Se producirá un error fatal si no hay una ventana actual cuando se llame a NFCReadTag .

Otras notas

  • Las funciones NFC no se pueden utilizar en el simulador ni en el emulador.
  • iPhone/iPad Las funciones NFC sólo están disponibles en modo de sólo lectura.

Permisos necesarios

La llamada a esta función modifica los permisos requeridos por la aplicación.
Permisos necesarios:
  • NFC: Permite a las aplicaciones realizar operaciones de entrada/salida a través de la tecnología NFC.
  • VIBRATOS: Se utiliza para acceder a la función del sensor.
iPhone/iPad

AppID requerido

Llamando a esta función se modifican los AppIDs de la aplicación en la cuenta de desarrollador de Apple.. Es necesario activar la App ID "Lectura de etiquetas NFC"..
Android

Aplicación en segundo plano: Caso específico a partir de Android 10

A partir de Android 10, no se puede abrir una ventana si la aplicación está en segundo plano.
La función NFCReadTag puede abrir una ventana. Si se utiliza esta función cuando la aplicación está en segundo plano, se producirá un error fatal.
Consejos:
  • Para saber si la aplicación está en segundo plano, utilice la función InBackgroundMode.
  • Si una aplicación necesita interactuar con el usuario cuando está en segundo plano, se puede mostrar una notificación (con el tipo Notification). La aplicación volverá al primer plano cuando se haga clic en la notificación, si la propiedad ActivateApplication se establece en True. También es posible abrir una ventana desde el procedimiento pasado a la propiedad ActionClick.
Para obtener más información, consulte Android 10: Comportamiento de aplicaciones en segundo plano.
Clasificación Lógica de negocio / UI: Lógica de negocio
Componente: wd290android.jar
Versión mínima requerida
  • Versión 18
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 23/06/2023

Señalar un error o enviar una sugerencia | Ayuda local