RFID-läsare för EPassports av Android-telefon (TfCD) (6 / 7 steg)
Steg 6: Vad bör vara där: källfiler
Källfilerna för projektet är indelade i olika klasser:
- Om en databas och det hanterar (DataBase.java, DataBaseHelper.java)
- Vissa aktiviteter (BACeditor.java, PassportReader.java, PassportResult.java)
- Några ytterligare behövs klasser (ListAdapter.java, Utils.java)
För att få tillgång till passuppgifter i har flera protokoll ska utföras. Det första protokollet (BAC) skickar passuppgifter (födelsedatum, datum för utgången och dokument) till chipet. Om informationen är korrekt kan chipet ytterligare kommunikation. Detta är en säkerhetsfunktion som förhindrar obehörig läsning av kortet.
Databas
För ansökan om innebär detta att de tre variablerna (födelsedatum, datum för utgången och dokument) måste lagras på enheten som ska användas när det behövs. En lokal databas skapas för att lagra data. Därmed skapas en klass som infogar data in och hämtar data från databasen. Dokumentation om databaser i Android finns här.
Aktiviteter
Verksamheten är i vårt fall kopplade till de olika gränssnitten i vår ansökan. Klassen PassportReader visas när appen lanseras och väntar ett pass för att få stänga och börjar meddelandet (NFC intent). Liknande denna. Med en knapp kan du infoga BAC data, som tidigare nämnts. Skärmen som öppnas är kopplad till klassen BACeditor. Efter en maskin läsbar resehandling (som ett ePassport) är erkända, klassen PassportResult öppnas. Denna verksamhet läser data lagras på ePassport och visar den. Här används JMRTD biblioteket. Genomförandet är det lämpligt att använda källkoden för detta bibliotek från här med en instruktion från här.