Étape 16 : Android App Architecture et Code
L’app Android est conçu avec des principes très similaires comme la bibliothèque principale de l’étincelle.
Tous les détails de crypto et protocole sont isolées dans une bibliothèque (jaune sur le diagramme UML). AESChannelClient est responsable de tous les cryptage/décryptage et gestion de session. La conversation sécurisée (demande suivie d’une réponse) est gérée par l’interface de Conversation . Demande d’une instance de Conversation automatiquement effectue la poignée de main et retourne qu'une Conversation prête à envoyer un message sécurisé.
Le GarageDoorController est la classe qui envoie des commandes à la base et interprète les réponses.
Le GarageControlActivity est l’activité principale de l’application Android.
Consulter le diagramme UML et le code pour plus de détails : https://github.com/vace117/GarageOpenerAndroid
Clé principale
Vous devez utiliser la même clé principale vous avez utilisé sur le noyau, mais pour Android il est spécifié différemment. La clé doit être écrite dans un fichier binaire et est tombée dans la GarageOpener/assets/master.key. Vous pouvez utiliser n’importe quel éditeur hexadécimal pour ce faire.