Spark Core och Android Garage öppnare. Minus Spark molnet. (16 / 19 steg)
Steg 16: Android App arkitektur och kod
Android app är utformad med mycket liknande principer som gnista kärna bibliotek.
Alla crypto och protokollet detaljerna är isolerade i ett bibliotek (gul på UML-diagrammet). AESChannelClient ansvarar för all kryptering/dekryptering och sessionshantering. Den säker konversationen (begäran följt av ett svar) sköts av gränssnittet konversation . Ber om en instans av samtalet automatiskt utför handslag och returnerar en konversation beredd att skicka ett säkert meddelande.
GarageDoorController är den klass som skickar kommandon till kärnan och tolkar Svaren.
GarageControlActivity är den huvudsakliga verksamheten som Android app.
Hänvisa till UML-diagrammet och koden för detaljer: https://github.com/vace117/GarageOpenerAndroid
Huvudnyckel
Du måste använda samma huvudnyckeln du använt på kärnan, men för Android specificeras det annorlunda. Nyckeln måste vara skriven i en binärfil och släpps ned i GarageOpener/assets/master.key. Du kan använda någon hex redaktör för att göra detta.