Scopo
Richiede alla shell nativa di effettuare la lettura di un codice a barre.
Sintassi
Shell.scanBarcode(Barcode types, Shutter)
Argomenti
Barcode types | È un valore intero che rappresenta il tipo di barcode che occorre leggere. È possibile utilizzare uno qualunque dei valori della lista BarcodeTypes. È anche possibile indicarne più d'uno effettuando la somma tra i valori. |
Shutter | È un parametro booleano opzionale che indica alla shell nativa quando effettuare la lettura. Se viene specificato il valore True, la shell nativa mostra un apposito pulsante premendo il quale viene effettuata la lettura. Se viene fornito il valore False, la lettura è continua. Il valore predefinito, qualora non venga specificato un valore, è False (lettura continua). |
Esempio di codice
// ***************************************************************************
// Avvia la lettura del codice a barre
// ***************************************************************************
public void AppMobile.ScanBarCode()
{
// Solo codici 2D
Shell.scanBarcode(QRCode + DataMatrix, ...)
}
// ***************************************************************************
// Evento notificato dall'applicazione quando viene passato un comando via URL
// ***************************************************************************
event AppMobile.OnCommand(
string Command // È una stringa contenente il valore del parametro di URL denominato CMD
)
{
if (Command == "BARCODE")
{
string Text = AppMobileOff.getURLParam("TEXT")
string Error = AppMobileOff.getURLParam("ERROR")
AppMobile.messageBox("Barcode: " + Text + "\nError: " + Error)
}
}
// Avvia la lettura del codice a barre
// ***************************************************************************
public void AppMobile.ScanBarCode()
{
// Solo codici 2D
Shell.scanBarcode(QRCode + DataMatrix, ...)
}
// ***************************************************************************
// Evento notificato dall'applicazione quando viene passato un comando via URL
// ***************************************************************************
event AppMobile.OnCommand(
string Command // È una stringa contenente il valore del parametro di URL denominato CMD
)
{
if (Command == "BARCODE")
{
string Text = AppMobileOff.getURLParam("TEXT")
string Error = AppMobileOff.getURLParam("ERROR")
AppMobile.messageBox("Barcode: " + Text + "\nError: " + Error)
}
}
- La procedura ritorna subito, pertanto il sistema non aspetta che il codice a barre venga effettivamente letto.
- La shell nativa notifica l'evento OnCommand dell'applicazione per comunicare l'avvenuta lettura. Il valore del parametro COMMAND è "BARCODE". Occorre utilizzare la funzione GetURLParam specificando per il parametro Variable name il valore "TEXT" per ottenere il testo letto dalla shell o il valore "ERROR" per ottenere eventuali messaggi di errore.
-
Se l'utente annulla la lettura, la shell nativa notifica l'evento OnCommand con i seguenti valori:
COMMAND = "BARCODE" GetURLParam("TEXT") = "" GetURLParam("ERROR") = ""
-
Se il dispositivo non è dotato di fotocamera, la shell nativa notifica l'evento OnCommand con i seguenti valori:
COMMAND = "BARCODE" GetURLParam("TEXT") = "" GetURLParam("ERROR") = "[testo dell'errore]"
- Dalla versione 18.0 sui dispositivi con Android Marshmallow o superiore viene richiesta preventivamente la permission per accedere alla fotocamera.
- Questa funzionalità è disponibile solo per applicazioni offline in esecuzione nella shell nativa.
Ultima modifica: 20/11/2020 / Validità: da 12.0.5200