Paso 6: Lo que debe ser allí: archivos de código fuente
Los archivos de origen del proyecto se dividen en diferentes clases:
- Sobre una base de datos y está manejando (DataBase.java, DataBaseHelper.java)
- Algunas actividades (BACeditor.java, PassportReader.java, PassportResult.java)
- Algunos adicionales necesarias clases (ListAdapter.java, Utils.java)
Para acceder a los datos de pasaporte varios protocolos deben ser ejecutado. El primer Protocolo (BAC) envía los datos de pasaporte (fecha de nacimiento, fecha de caducidad, número de documento) al chip. Si esta información es correcta el chip permite más comunicación. Esta es una característica de seguridad que evita que la lectura no autorizada de la tarjeta.
Base de datos
Para la aplicación, esto significa que las tres variables (fecha de nacimiento, fecha de caducidad, número de documento) deben ser almacenados en el dispositivo para ser utilizado cuando sea necesario. Se crea una base de datos local para almacenar estos datos. Así se crea una clase que inserta datos en y recupera los datos de esta base de datos. Documentación sobre bases de datos en Android puede encontrarse aquí.
Actividades
Las actividades son en nuestro caso vinculado a las diferentes interfaces de nuestra aplicación. La clase PassportReader se muestra cuando se inicia la aplicación y espera un pasaporte conseguir cerrar y comienza la comunicación (intención de NFC). Similar a este. Con un botón puede insertar los datos de la BAC, como se mencionó anteriormente. La pantalla que se abre está ligada a la clase BACeditor. Después de un documento de viaje de lectura de la máquina (como un pasaporte electrónico) es reconocido, se abre la clase PassportResult. Esta actividad Lee los datos almacenados en el ePassport y la muestra. Aquí utiliza la biblioteca JMRTD. Para la aplicación es útil utilizar el código fuente de esta biblioteca desde aquí con las instrucciones de aquí.