Skip to content

Data Privacy: Implementierung

Julia Zet edited this page Jul 12, 2020 · 2 revisions

Evaluation einer Implementierung in Android

In der Android App gibt es die Datenschutzerklärung doppelt, einmal wenn man die App zum ersten mal startet ( OnboardingPrivacyFragment.kt + fragment_onboarding_privacy.xml) und einmal wenn man über das Menü zu den App-Informationen geht ( InformationPrivacyFragment.kt + fragment_information_privacy.xml). Beide Ansichten sind fast gleich und eher minimalistisch gehalten. Über das XML-Layout wird direkt das privacy HTML-Dokument aus den Assets importiert und dargestellt.

Wenn man hier etwas umbaut, sollte man also eine zentrale Stelle schaffen, damit die beiden Ansichten gleich aussehen. Desweiteren sollte man die Daten zusammenhalten, damit deren Pflege (Übersetzung, (rechtliche) Prüfung des Inhalts) einfach erfolgen kann.

Eine Erweiterung des HTML's, um eine auf- und zuklappen Funktion ist theoretisch möglich. Status quo haben aber jedoch noch nicht geprüft, ob die Funktion auch unter Android funktioniert. Des Weiteren wäre es in mit einem Touchscreen nicht so gut zu bedienen und würde nicht zum Design passen.

Wir schlagen daher vor den Text zur Laufzeit in einzelne Elemente aufzuteilen, die auf- und zugeklappt werden können. In Android gibt es dafür bereits ein spezielles Element – ExpandableListView. Hierzu muss dann nur ein passender ExpandableListAdapter implementiert werden, der die Daten im vom ExpandableListView gewünschten Format bereitsstellt und das Layout für die einzelnen Elemente erstellt. Die Elemente kann man dabei als Layout-Dateien bereitstellen und laden.

Die Implementierung des ExpandableListAdapter ist überschaubar, man muss bloß das vorhandene HTML an den richtigen Stellen zerlegen und auf anfrage die Gruppen (auf-/zuklappbare Elemente) und die Kinder (darunterliegende Elemente) zurückgeben. Zum zerlegen sollte man einen HTML-Parser verwenden, da aber hauptsächlich an den Überschriften (h2,h3) getrennt wird und keine HTML-Attribute verwendet werden, kann man notfalls auch direkt den Text parsen und nach den öffnenden und schließenden Tags suchen.

Eine Implementierung der Icons/graphischen Änderungen ist aufwändiger. Icons werden direkt im Text verwendet, hier könnte man wahrscheinlich einen Custom-Font verwenden, um die Zeichen in den Text einzubauen oder die ASCII-codierung bereits vorhandener Emoticons nutzen. Die Implementierung von customized Icons ist bislang unklar.

Das Hervorheben von Abschnitten, z.B. Referenzen auf Gesetze, ist schwieriger. Hier müsste man im HTML einen Hinweis hinterlegen, der dann beim zerlegen für das Auf-/Zuklappen interpretiert wird, sodass ein anderes Layout verwendet wird.

Bei all dem ist zu beachten, dass dies nur ein Vorschlag für die Implementierung in Android ist. Die iOS App sollte man sinnvollerweise auch aktualisieren damit die beiden Apps konsistent sind.

Clone this wiki locally