Barcode scanner

8 febbraio 2016

Il servizio $cordovaBarcodeScanner consente l’accesso al plugin Barcode scanner, che sfrutta la fotocamera per acquisire dati da diversi tipi di codice a barre: da EAN 8 a Code 128, da QR Code a Data Matrix.

Per installare il plugin nell’ambiente Ionic occorre eseguire il seguente comando dalla CLI (Command Line Interface):

ionic plugin add phonegap-plugin-barcodescanner

Utilizzare al meglio il plugin è abbastanza semplice, occorre solo prendere confidenza con i due metodi scan() ed encode() del servizio $cordovaBarcodeScanner.

scan

Il seguente esempio mostra come acquisire dati da un codice a barre:

$ionicPlatform.ready(function() { 
	$cordovaBarcodeScanner.scan() 
		.then(function(barcodeData) { 
				console.log("Testo barcode: " + barcodeData.text); 
				console.log("Tipo barcode: " + barcodeData.format); 
			},   
			function(error) { 
				console.log("Si è verificato un errore: " + error); 
			}); 
}); 

Come possiamo vedere, il metodo scan() restituisce una promise Angular. In caso di successo dell’acquisizione otteniamo le informazioni tramite il parametro barcodeData. Questo è un oggetto la cui proprietà text contiene il testo rappresentato dal codice a barre, mentre la proprietà format rappresenta il tipo di barcode decodificato.

L’oggetto prevede anche la proprietà booleana cancelled il cui valore diventa true nel caso in cui l’acquisizione sia interrotta dall’utente.

encode

La codifica di un testo in QR Code può essere effettuata tramite il metodo encode(), come mostrato dal seguente esempio:

$ionicPlatform.ready(function() { 
	$cordovaBarcodeScanner.encode(BarcodeScanner.Encode.TEXT_TYPE, "http://www.html.it") 
		.then(function(result) { 
				console.log("Codifica avvenuto con successo!"); 
			},   
			function(error) { 
				console.log("Si è verificato un errore: " + error); 
			}); 
}); 

Il metodo encode() prevede due parametri: il primo parametro indica il tipo di testo da codificare mentre il secondo parametro è il testo da codificare. I possibili valori previsti per indicare il tipo di testo da codificare sono:

BarcodeScanner.Encode.TEXT_TYPE 
BarcodeScanner.Encode.EMAIL_TYPE
BarcodeScanner.Encode.PHONE_TYPE
BarcodeScanner.Encode.SMS_TYPE

L’esecuzione del codice dell’esempio genera un QRCode corrispondente all’URL specificato e mostra il risultato in una finestra a tutto schermo.

Allo stato attuale la funzione di codifica è disponibile solo per Android ed è utilizzabile soltanto per generare QR Code.

Tutte le lezioni

1 ... 19 20 21 ... 29

Se vuoi aggiornamenti su Barcode scanner inserisci la tua e-mail nel box qui sotto:
 
X
Se vuoi aggiornamenti su Barcode scanner

inserisci la tua e-mail nel box qui sotto:

Ho letto e acconsento l'informativa sulla privacy

Acconsento al trattamento dei dati per attività di marketing