Exploring Intent-Style Messages for Cross-Device Communication (Arbeitstitel)

Thema:
Exploring Intent-Style Messages for Cross-Device Communication
Art:
BA
BetreuerIn:
Andreas Schmid
BearbeiterIn:
Sebastien Alipour
ErstgutachterIn:
Raphael Wimmer
ZweitgutachterIn:
Christian Wolff
Status:
abgeschlossen
Stichworte:
cross-device communication, android, API
angelegt:
2021-07-30
Antrittsvortrag:
2022-01-31
Abgabe:
2022-04-19
Textlizenz:
CC-BY
Codelizenz:
MIT

Hintergrund

Das Android-Betriebssystem bietet mit dem Intent-Konzept [1] ein elegantes System für die Kommunikation zwischen verschiedenen Apps, Services und Activities. Über ein XML-File (Manifest) können Apps nach außen kommunizieren, über welche Capabilities sie verfügen. Fordert eine andere App beispielsweise ein Bild an, kann dies über jede App zur Verfügung gestellt werden, die über eine solche Capability verfügt (in diesem Fall zum Beispiel Kamera-App und Gallerie).

Wenngleich Intents unter Android nur für die Kommunikation zwischen (Software-)Komponenten auf dem selben System gedacht sind, könnte sich das Konzept auf die Kommunikation zwischen Geräten in einem Netzwerk als Abstraktionslayer übertragen lassen. Wie Android-Apps mit ihrem Manifest-File könnten physische Geräte (beispielsweise Sensoren, Kameras oder Eingabegeräte) ihre Capabilities an andere Geräte im Netzwerk kommunizieren. Wird nun auf einem Gerät zum Beispiel ein Bild gebraucht, könnte dies von verschiedenen Geräten im Netzwerk angefordert werden.

Zielsetzung der Arbeit

In dieser Arbeit soll ein Konzept erarbeitet werden, mit dem sich ein Intent-ähnliches Protokoll auf die Kommunikation zwischen Geräten in einem Netzwerk übertragen lässt. Dabei sollen auch mögliche Probleme und Edge-Cases identifiziert werden. Auch eine prototypische Umsetzung des Konzepts und eine Evaluation dieses Prototyps sind Teil der Arbeit.

Konkrete Aufgaben

  • Einarbeiten in das Intent-Konzept und Kommunikationsprotokolle (1 Woche)
  • Übertragen des Intent-Konzepts auf die Kommunikations zwischen Geräten (0.5 Wochen)
  • Identifikation von Use-Cases und Anforderungserhebung (1 Woche)
  • Auswahl geeigneter Kommunikationsprotokolle für diese Use-Cases (0.5 Wochen)
  • Prototypische Implementierung (2 Wochen)
  • Evaluation des Prototyps (1 Woche)
  • Fertigstellen der schriftlichen Ausarbeitung (2 Wochen)

Erwartete Vorkenntnisse

  • Android
  • Kommunikationsprotokolle
  • gute Programmierkenntnisse
  • Linux

Weiterführende Quellen