Master- Arbeit - Lehrstuhl für Technische Informatik - Universität ...

Master- Arbeit - Lehrstuhl für Technische Informatik - Universität ... Master- Arbeit - Lehrstuhl für Technische Informatik - Universität ...

ti.informatik.uni.tuebingen.de
von ti.informatik.uni.tuebingen.de Mehr von diesem Publisher
28.12.2013 Aufrufe

30 KAPITEL 4. RELEVANTE TECHNOLOGIE ÜBER QR-CODE Abbildung 4.4: Decodierte Information von QR-Code 4.3 QR-Code in Android 4.3.1 Kamara Kontrollieren in Android Bevor ein Android-Smartphone einen QR-Code einscannt, muss dieses zuerst seine Kamera aktvieren. Durch Android API open ( i n t ) ; erhält man Kontrolle über die Kamerafunktion. Diese Funktion open ( i n t ) ; muss in p u b l i c void openDriver ( SurfaceHolder holder ) ; verwendet werden, openDrive ( SurfaceHolder holder ) ; startet den Kamera-Betrieb und initialisiert die Parameter der Hardware. 1 p u b l i c void openDriver ( SurfaceHolder holder ) throws IOException {

4.3. QR-CODE IN ANDROID 31 2 i f ( camera == n u l l ) { 3 camera = Camera . open ( ) ; 4 i f ( camera == n u l l ) { 5 throw new IOException ( ) ; 6 } 7 camera . setPreviewDisplay ( holder ) ; 8 9 i f ( ! i n i t i a l i z e d ) { 10 i n i t i a l i z e d = true ; 11 configManager . initFromCameraParameters ( camera ) ; 12 } 13 configManager . setDesiredCameraParameters ( camera ) ; 14 FlashlightManager . e n a b l e F l a s h l i g h t ( ) ; 15 } 16 } 4.3.2 Decodiereung QR-Code in Android Nach dem erfolgreichen Scanvorgang muss das Smartphone die QR-Code decodieren: Mit der p u b l i c void handleDecode ( Result r e s u l t , Bitmap barcode ) ; Funktion wird der ausgelesene QR-Code entschlüsselt und der geheime Text ausgeben. Zum Schluss wird as Ergebnis auf Handy angezeigt. 1 p u b l i c void handleDecode ( Result r e s u l t , Bitmap barcode ) { 2 i n a c t i v i t y T i m e r . onActivity ( ) ; 3 playBeepSoundAndVibrate ( ) ; 4 S t r i n g r e s u l t S t r i n g = r e s u l t . getText ( ) ; 5 i f ( r e s u l t S t r i n g . e q u a l s (””) ) { 6 Toast . makeText ( CaptureActivity . t h i s , ”Scan f a i l e d ! ” , Toast . LENGTH SHORT) . show ( ) ; 7 } e l s e { 8 I n t e n t r e s u l t I n t e n t = new I n t e n t ( ) ; 9 Bundle bundle = new Bundle ( ) ; 10 bundle . putString (” r e s u l t ” , r e s u l t S t r i n g ) ; 11 r e s u l t I n t e n t . putExtras ( bundle ) ;

30 KAPITEL 4. RELEVANTE TECHNOLOGIE ÜBER QR-CODE<br />

Abbildung 4.4: Decodierte Information von QR-Code<br />

4.3 QR-Code in Android<br />

4.3.1 Kamara Kontrollieren in Android<br />

Bevor ein Android-Smartphone einen QR-Code einscannt, muss dieses zuerst<br />

seine Kamera aktvieren. Durch Android API<br />

open ( i n t ) ;<br />

erhält man Kontrolle über die Kamerafunktion. Diese Funktion<br />

open ( i n t ) ;<br />

muss in<br />

p u b l i c void openDriver ( SurfaceHolder holder ) ;<br />

verwendet werden,<br />

openDrive ( SurfaceHolder holder ) ;<br />

startet den Kamera-Betrieb und initialisiert die Parameter der Hardware.<br />

1 p u b l i c void openDriver ( SurfaceHolder holder ) throws<br />

IOException {

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!