<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Beiträge von Eva Altenburger - Mobile USTP MKL</title>
	<atom:link href="https://mobile.fhstp.ac.at/author/it211506/feed/" rel="self" type="application/rss+xml" />
	<link>https://mobile.fhstp.ac.at/author/it211506/</link>
	<description>Die &#34;Mobile Forschungsgruppe&#34; der USTP, sie  sammelt hier alles zu den Themen Design, UX und Entwicklung mobiler Applikationen</description>
	<lastBuildDate>Wed, 18 Jan 2023 17:27:44 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://mobile.fhstp.ac.at/wp-content/uploads/2025/03/icon-120x120.webp</url>
	<title>Beiträge von Eva Altenburger - Mobile USTP MKL</title>
	<link>https://mobile.fhstp.ac.at/author/it211506/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Jetpack Compose: Android UI Development</title>
		<link>https://mobile.fhstp.ac.at/allgemein/jetpack-compose-android-ui-development/</link>
		
		<dc:creator><![CDATA[Eva Altenburger]]></dc:creator>
		<pubDate>Wed, 18 Jan 2023 17:27:41 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=10547</guid>

					<description><![CDATA[<p>Vor einiger Zeit wurde Jetpack Compose vorgestellt, ein modernes UI-Framework für Android-Entwickler*innen. Ähnlich wie React oder Flutter verwendet es eine deklarative Programmierung, bei der die UI als Funktion der App-Daten beschrieben wird, anstatt durch imperatives Setzen von Eigenschaften und Handhaben von Ereignissen wie in traditionellen Android-UI-Frameworks. </p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/jetpack-compose-android-ui-development/">Jetpack Compose: Android UI Development</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>In den letzten Jahren hat sich die Android Entwicklung stark verändert. Vor einiger Zeit wurde Jetpack Compose vorgestellt, ein modernes UI-Framework für Android-Entwickler*innen. Ähnlich wie React oder Flutter verwendet es eine deklarative Programmierung, bei der die UI als Funktion der App-Daten beschrieben wird, anstatt durch imperatives Setzen von Eigenschaften und Handhaben von Ereignissen wie in traditionellen Android-UI-Frameworks. Dadurch wird die Entwicklung von Benutzeroberflächen einfacher und ist leichter zu lesen. Außerdem ist es verständlicher, was die UI tut und wie sie sich auf die Daten der App auswirkt. </p>



<p>Vor Jetpack Compose wurden Interfaces in Android mit XML Files entwickelt. Diese wurden verwendet, um die Struktur der UI zu beschreiben. Die Funktionalität der UI wurde dann mit Java oder Kotlin  implementiert. Die Layouts wurden in XML beschrieben und der Code greift darauf zu, um die Eigenschaften der UI-Elemente zu setzen und Ereignisse zu behandeln.</p>



<p>Dieser Ansatz bringt einige Nachteile mit sich z.B. ist der Code, der die UI beschreibt, schwierig zu verstehen und zu debuggen. Außerdem ist es sehr aufwendig dynamische Elemente zu erstellen. Jetpack Compose hat versucht diese Probleme zu lösen und ermöglicht es Entwickler*innen, Benutzeroberflächen einfacher, lesbarer und fehleranfälliger zu erstellen.</p>



<h2 class="wp-block-heading">Das Konzept von Composition und Recomposition</h2>



<p>Composition in Jetpack Compose bezieht sich darauf, wie UI-Elemente zusammengesetzt werden, um die gesamte Benutzeroberfläche einer App zu erstellen. Es ermöglicht Entwickler*innen, einfache UI-Elemente wie Text, Bilder und Buttons zu verwenden, um komplexere UI-Strukturen wie Listen, Karten und Formulare zu erstellen. Diese einfacheren Elemente werden als Composable Functions bezeichnet.</p>



<p>Recomposition bezieht sich auf die Fähigkeit von Jetpack Compose, diese UIs automatisch neu zu erstellen, wenn sich die Daten, die sie darstellen, ändern. Das bedeutet, dass das Framework die Anzeige automatisch aktualisiert, wenn sich die Daten ändern, anstatt dass der Entwickler*innen manuell diesen Vorgang schreiben muss.</p>



<p>Das Konzept der Composition und Recomposition in Jetpack Compose erleichtert die Erstellung von Benutzeroberflächen und die Steuerung von Zuständen und Anzeigeaktualisierungen, da Entwickler*innen sich auf das Beschreiben dessen konzentrieren können, was sie anzeigen möchten, anstatt sich mit der Logik zu beschäftigen, wie es angezeigt werden soll. Dadurch wird die Entwicklung von Benutzeroberflächen schneller und einfacher, da Entwickler*innen weniger Code schreiben und weniger Fehler machen müssen, um dieselben Ergebnisse zu erzielen.</p>



<h2 class="wp-block-heading">Beispiel einer Komponente</h2>



<p>Der folgende Code-Block beschreibt eine Composable Funktion, mit der ein Raster von Filmen aufgerufen werden können. In der Funktion selbst wird eine weitere selbstdefinierte Composable Funktion, MoviePosterCard(), aufgerufen. Dort wird definiert, wie ein Film im Raster dargestellt wird und die Daten aus Files außerhalb der UI-Files übergeben. Auch LazyVerticalGrid ist eine Composable Funktion, die aber bereits vordefiniert wurde und mit verschiedenen Parameter personalisiert werden kann. </p>



<pre class="wp-block-code"><code>@Composable
fun MoviesGridScreen(
    movies: List&lt;Movie&gt;,
    navController: NavController,
    modifier: Modifier = Modifier
) {
    LazyVerticalGrid(
        columns = GridCells.Adaptive(150.dp),
        modifier = modifier.fillMaxWidth(),
        contentPadding = PaddingValues(2.dp)
    ) {
        items(items = movies, key = { movie -&gt; movie.id }) { movie -&gt;
            MoviePosterCard(
                movie,
                navController
            )
        }
    }
}</code></pre>



<h2 class="wp-block-heading">Vorteile und Nachteile von Jetpack Compose</h2>



<p>Auf der Seite von Android zu Jetpack Compose werden folgende Vorteile gelistet: </p>



<p>+ Code: Der Code für das UI ist einfach aufgebaut und somit besser zu verwenden, da es keine Verlinkungen zu XML Files mehr gibt. Dadurch ist der Code nicht nur lesbarer geworden sondern wird auch schneller ausgeführt.</p>



<p>+ Intuitiv: Dadurch das Komponenten mit Composable Funktionen aufgerufen werden, funktioniert auch die Auto-Vervollständigung sehr gut. Zusätzlich werden einfache Fehler direkt von Android Studio gelöst. </p>



<p>&#8211; Aktualität: Jetpack Compose ist noch nicht fertig entwickelt und einige Features können erst in Alpha-Versionen oder mit speziellen Deklarationen verwendet werden. </p>



<p>&#8211; Dokumentation: Die Dokumentation von Android im allgemeinen ist meiner Meinung nach eher gewöhnungsbedürftig. Es dauert eine Zeit, bis man sich damit zurecht findet und alle notwendigen Informationen findet. Dadurch, dass es noch Alpha-Versionen gibt, gibt es auch einige Lücken in der Dokumentation. </p>



<p>Auch wenn Jetpack Compose noch in der Entwicklung ist, merkt man bereits, dass dieses Toolkit einige Verbesserungen mit sich bringt. </p>



<hr class="wp-block-separator has-alpha-channel-opacity" />



<h2 class="wp-block-heading">Quellen</h2>



<p><a href="https://developer.android.com/jetpack/compose">https://developer.android.com/jetpack/compose</a></p>



<p><a href="https://www.geeksforgeeks.org/basics-of-jetpack-compose-in-android/">https://www.geeksforgeeks.org/basics-of-jetpack-compose-in-android/</a></p>



<p><a href="https://medium.com/androiddevelopers/understanding-jetpack-compose-part-1-of-2-ca316fe39050">https://medium.com/androiddevelopers/understanding-jetpack-compose-part-1-of-2-ca316fe39050</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/jetpack-compose-android-ui-development/">Jetpack Compose: Android UI Development</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>StreamFinds: Android App Projekt</title>
		<link>https://mobile.fhstp.ac.at/allgemein/streamfinds-android-app-projekt/</link>
		
		<dc:creator><![CDATA[Eva Altenburger]]></dc:creator>
		<pubDate>Wed, 18 Jan 2023 13:58:19 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=10443</guid>

					<description><![CDATA[<p>StreamFinds ist eine Android App, die im WS 2022 entwicklet wurde. Sie interagiert mit der The Movie Database API und beinhaltet zwei Features: eine Suche nach Filmen bzw. Serien und das Anzeigen von Informationen über diese Filme bzw. Serien, und wo sie zu sehen sind.</p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/streamfinds-android-app-projekt/">StreamFinds: Android App Projekt</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Für dieses Semester werde ich ein natives Projekt umsetzen.&nbsp;</p>



<p>Dabei möchte ich mich mit Android, und da vor allem mit Jetback Compose, auseinandersetzen.&nbsp;</p>



<p>Ziel ist es, eine Android App mit angepasstem Theme zu entwickeln, die mit einer externen Api interagiert.</p>



<h2 class="wp-block-heading">Das Projekt</h2>



<p>Der Name der App lautet StreamFinds und interagiert mit der The Movie Database API. Die App soll zwei Features beinhalten:&nbsp;</p>



<ul class="wp-block-list"><li>eine Suche nach Filmen bzw. Serien </li><li>Informationen über diese Filme bzw. Serien, und wo sie zu sehen sind, anzuzeigen</li></ul>



<p>Das Theme wird auf Material 3 basieren und sich an das Theme des Users anpassen.&nbsp;</p>



<h2 class="wp-block-heading">Vorbereitung</h2>



<p>Da ich selbst noch nie eine vollständige Android App entwickelt habe, habe ich der Vorbereitungszeit viel Zeit eingeräumt. Dafür habe ich mich fast ausschließlich mit der Developer Seite von Google auseinander gesetzt.&nbsp;</p>



<p>Dort findet man neben den Referenzen auch Guides und vollständige Tutorials. Als Vorbereitung habe ich mir folgenden Kurs grob angeschaut:&nbsp;</p>



<p><a href="https://developer.android.com/courses/android-basics-compose/course">https://developer.android.com/courses/android-basics-compose/course</a></p>



<p>Hier gibt es Tutorials für einige kleinere Apps wie z.B. eine kleines Game mit einem Score oder eine App um Fotos aus dem Internet per API anzeigen zu lassen.&nbsp;</p>



<p>Hier waren vor allem die Tutorials und Guides für die Architektur für mich wichtig.</p>



<h2 class="wp-block-heading">Planung der App</h2>



<p>Da ich mit Jetpack Compose arbeiten möchte, habe ich mich auch bei der Architektur daran orientiert und folgenden Plan aufgestellt:&nbsp;</p>



<ul class="wp-block-list"><li>data<ul><li>Repository: ruft die Endpunkte auf, implementiert den Zugriff auf die API</li></ul></li><li>network<ul><li>definiert die Endpoints der API</li></ul></li><li>model<ul><li>DTOs</li></ul></li><li>ui<ul><li>screens: Composable Funktionen</li><li>navigation: definiert die Routen</li><li>ViewModel: ruft die Daten auf</li><li>theme: Dateien zu Farben und Typografie</li></ul></li><li>Main Activity</li></ul>



<h2 class="wp-block-heading">Entwicklung </h2>



<p>Die App ist so aufgebaut, dass es je einen Screen für die Film-Suche und einen für die Serien-Suche gibt. Bei der Implementierung der Suche bin ich direkt auf die ersten Probleme gestoßen. Am Anfang hatte ich einige Probleme die Endpoints überhaupt aufzurufen und vor allem die Daten anzuzeigen. Im nach hinein kann ich sagen, dass das die größten Probleme waren. Sobald ich einmal Listen und auch einzelne Objekte aufrufen und anzeigen konnte, war die weitere Umsetzung weniger schwierig.</p>



<p>Die Suche wird als Grid angezeigt und auf jedes Item kann geklickt werden, um zu den Details weitergeleitet zu werden. Dort werden neben Daten, z.B. das Veröffentlichungsdatum oder die Sprache, auch angezeigt, auf welchen Streaming Plattformen die Filme oder Serien zu sehen sind. </p>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1540" height="800" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2023/01/streamfinds-search-1540x800.jpg" alt="titelbild" class="wp-image-10526" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2023/01/streamfinds-search-1540x800.jpg 1540w, https://mobile.fhstp.ac.at/wp-content/uploads/2023/01/streamfinds-search-770x400.jpg 770w" sizes="(max-width: 1540px) 100vw, 1540px" /><figcaption>Screens aus der App</figcaption></figure>



<p>Da ich die App eigentlich nur für mich entwickelt habe, habe ich auch die neuste Android Version verwendet. Dort ist passen sich die Farben des Themes an meinen Hintergrund an. Mit diesem Feature von Material Design 3 habe ich auch die App gestaltet. </p>



<h2 class="wp-block-heading">Meine Learnings</h2>



<p>Die Umsetzung dieses Projektes hat mir viel Spaß gemacht, da ich gerne neue Skills lernen. Da ich davor fast gar kein Wissen über Android Entwicklung hatte, konnte ich hier also viel neues Lernen. Vor allem die Probleme mit den API-Aufrufen hat mit gezeigt, dass es doch einige Unterschiede zu Web Entwicklung gibt. </p>



<p>Jetpack Compose ist selbst noch am Anfang und einige Features gibt es erst in einer Alpha-Version. Trotzdem würde ich sagen, dass die Entwicklung von Jetpack Compose sehr einfach und verständlich umzusetzen ist. Auf den ersten Blick wirkt die Dokumentation von Android sehr überfüllt, aber sie ist sehr hilfreich und detailliert, wenn man sich damit zurechtfindet. </p>



<p>Am Anfang des Projektes dachte ich, dass ich weitaus schneller mit dieser App fertig sein werde. Das Projekt hat mir gezeigt, wie unterschiedlich Entwicklung sein kann und, dass auch kleinere Projekte Zeit in der Entwicklung brauchen. </p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/streamfinds-android-app-projekt/">StreamFinds: Android App Projekt</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Docker Container erklärt</title>
		<link>https://mobile.fhstp.ac.at/allgemein/docker-container-erklaert/</link>
		
		<dc:creator><![CDATA[Eva Altenburger]]></dc:creator>
		<pubDate>Sat, 18 Jun 2022 12:58:32 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Container]]></category>
		<category><![CDATA[Docker]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=9969</guid>

					<description><![CDATA[<p>Docker ist ein Softwareframework, um Container auf Servern und der Cloud zu bauen, laufen zu lassen und zu managen. Docker unterstützt damit die Entwicklung von Applikationen von verschiedenen Programmiersprachen, Frameworks oder Architekturen. Die Docker-Software verbindet dabei die Container mit dem Betriebssystem.</p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/docker-container-erklaert/">Docker Container erklärt</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Docker ist ein Softwareframework, um Container auf Servern und der Cloud zu bauen, laufen zu lassen und zu managen. Docker unterstützt damit die Entwicklung von Applikationen von verschiedenen Programmiersprachen, Frameworks oder Architekturen. Die Docker-Software verbindet dabei die Container mit dem Betriebssystem. Die Container selbst enthalten kein Betriebssystem, nicht so wie bei virtuellen Maschinen.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="1225" height="501" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2022/06/docker-containerized-and-vm-transparent-bg.webp" alt="" class="wp-image-9975" /><figcaption>Vergleich der Architektur von Containern und Virtual Machines</figcaption></figure>



<h2 class="wp-block-heading">Was sind Container?</h2>



<p>Mit Container können Packages von Applikationen erstellt werden, die dabei alle notwendigen Abhängigkeiten und Konfigurationen beinhalten. Bei der Verwendung von Containern entsteht ein Artefakt, dass einfach geteilt und verschoben werden kann. Dadurch wird sowohl die Entwicklung als auch das Deployment verbessert und effizienter gestaltet.</p>



<p>Container existieren als öffentliches oder privates Repository. Auf öffentliche Repositories kann z.B. über Docker und Docker Hub zugegriffen und diese verwendet werden. Auf dem Docker Hub sind unzählige offizielle und inoffizielle Images für verschiedene Applikationen zu finden. Zu den beliebtesten Images gehören z.B. Redis, node, postgres, mysql oder mongo.</p>



<p>Wie bereits erwähnt kann mit Container der <strong>Entwicklungsprozess</strong> verbessert werden.</p>



<p>Ohne Container muss jeder Entwickler die meisten Services auf seinem Betriebssystem installieren, konfigurieren und in der lokalen Umgebung laufen lassen. Dieser Prozess ist dabei auf jedem Betriebssystem etwas anders. Zusätzlich können bei den viele Schritten viele Fehler passieren.</p>



<p>Mit Container müssen die Services nicht mehr auf dem eigenen Betriebssystem installiert werden. Der Container hat seine eigene Schicht mit einem Betriebssystem. Dabei wird eine isolierte Umgebung mit der Konfiguration, dem Image und dem Start Script in dem Container erstellt. Wenn das package dann verwendet wird, muss nur mehr die Docker Konfiguration durchgeführt werden. Diese ist für jedes Betriebssystem gleich. Damit wird der Prozess für ein Entwicklungsteam vereinfacht, da jeder die gleichen Schritte durchführt.</p>



<p>Mit Containern wird nicht nur die Entwicklung, sondern auch das <strong>Deployment</strong> verbessert. Ohne Container produziert das Entwicklerteam ein Artefakt mit den dazugehörigen Vorgaben, wie die Applikation auf dem Server zu installieren ist. Das Operation Team übernimmt dann die Aufgabe, die Umgebung aufzusetzen und zu deployen. Somit muss alles auf dem Server installiert und konfiguriert werden.</p>



<p>Bei der Verwendung von Containern arbeiten das Entwickler- und das Operation Team zusammen. Sie erstellen dabei ein Package. Dieses beinhaltet sowohl die Applikation als auch die Abhängigkeiten, das in einer Umgebung abgekapselt ist. Auf dem Server wird somit nur mehr Docker konfiguriert und der command für das Package ausgeführt.</p>



<h2 class="wp-block-heading">weitere Vorteile von Docker</h2>



<p><em>Automatisiertes Deployment:</em> Mit Docker kann konfiguriert werden, dass bei einer neuen Version der Container neu startet. Dabei spricht man von sogenannten automatisierten Builds. Somit muss nicht per Hand ein neuer Build erstellt werden.</p>



<p><em>Sicherheit:</em> Dank der Isolierung der Systeme, ist die Applikation auch sicherer. Das kommt vor allem daher, dass die Images nicht miteinander sprechen.</p>



<p><em>Third-Party Software: </em>Third-Party Software (wie z.B. ein E-Mail-Server) können sehr einfach installiert und konfiguriert werden.</p>



<p><em>Performance:</em> Container selbst laufen alle über denselben Kernel. Dadurch kann die Performance im Vergleich zu virtuellen Maschinen gesteigert werden.</p>



<p><em>Skalierung:</em> Mit Docker kann man bei jeder Applikation einstellen, wie viele Server verwendet werden sollen.</p>



<p><em>Open Source:</em> Docker selbst enthält auch open source Kompenenten, die in der Docker Community Edition zu finden sind.</p>



<hr class="wp-block-separator" />



<h2 class="wp-block-heading">erste Schritte mit Docker</h2>



<p>In diesem Abschnitt wird kurz eine Möglichkeit erklärt, wie man mit Docker anfangen kann:</p>



<ol class="wp-block-list" type="1"><li>Docker Desktop für das eigene Betriebssystem herunterladen und installieren.</li><li>Mit dem Tutorial von Docker Desktop anfangen. Dieses kann über den Menüpunkt Containers gefunden werden. Mit dem folgenden Command kann es gestartet werden:</li></ol>



<pre class="wp-block-code"><code>docker run -d -p 80:80 docker/getting-started</code></pre>



<pre class="wp-block-code"><code>
-d  // legt fest, dass der Container im Hintergrund läuft

-p 80:80  // bindet den Hostport 80 auf den Containerport 80

docker/getting-started  // definiert das zu verwendende Image
</code></pre>



<p>Wenn dieser Command ausgeführt wird, wird ein Container erstellt. Über Docker Desktop, in der Container Section, kann so das Tutorial über einen Browser geöffnet werden. In dem Tutorial wird unter anderem erklärt, wie man Docker konfiguriert, eine App updaten und teilen kann.</p>



<hr class="wp-block-separator" />



<p>Docker ist eine von verschiedensten Container Plattform und davon die am meist verbreitete. Das kommt vor allem daher, dass sie stabil läuft, sicher und kostengünstig ist. Zusätzlich überzeugt sie mit open source Lösungen, gutem Support und einem großen Ökosystem von passenden Produkten als auch eine große Masse an Images.</p>



<hr class="wp-block-separator" />



<h2 class="wp-block-heading">Quellen</h2>



<p><em>Docker Tutorial #1—Warum ihr Docker braucht! &#8211; YouTube</em>. (2022, März 23). Abgerufen 18. Juni 2022, von <a href="https://www.youtube.com/watch?v=avdVAfL8GPI&amp;list=PLNmsVeXQZj7oea6IDCLzpKe5XfLmWCwgr&amp;index=2">https://www.youtube.com/watch?v=avdVAfL8GPI&amp;list=PLNmsVeXQZj7oea6IDCLzpKe5XfLmWCwgr&amp;index=2</a></p>



<p><em>What is a Container? &#8211; Docker</em>. (2021, November 11). Abgerufen 18. Juni 2022, von <a href="https://www.docker.com/resources/what-container/">https://www.docker.com/resources/what-container/</a></p>



<p><em>What is Docker? | Opensource.com</em>. (o.&nbsp;J.). Abgerufen 18. Juni 2022, von <a href="https://opensource.com/resources/what-docker">https://opensource.com/resources/what-docker</a></p>



<p><em>Why Docker—Docker</em>. (2021, November 11).Abgerufen 18. Juni 2022, von <a href="https://www.docker.com/why-docker/">https://www.docker.com/why-docker/</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/docker-container-erklaert/">Docker Container erklärt</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>YET, another to-do-list app &#8211; Part 2</title>
		<link>https://mobile.fhstp.ac.at/studium/studium-projekte/yet-another-to-do-list-app-part-2/</link>
		
		<dc:creator><![CDATA[Eva Altenburger]]></dc:creator>
		<pubDate>Sat, 18 Jun 2022 12:55:05 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Projekte]]></category>
		<category><![CDATA[Studium]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=9990</guid>

					<description><![CDATA[<p>Für das Projekt im zweiten Semester habe ich mich dazu entschlossen, an meiner To-Do-List App weiterzuarbeiten. Im ersten Semester habe ich dafür ein Konzept erstellt, die Logik für To-Do Listen mit Kategorien im Backend mit NestJs implementiert und dafür mittels Ionic ein Frontend entwickelt. Im zweiten Semester habe ich mich auf das Design und Docker konzentriert.</p>
<p>The post <a href="https://mobile.fhstp.ac.at/studium/studium-projekte/yet-another-to-do-list-app-part-2/">YET, another to-do-list app &#8211; Part 2</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Für das Projekt im zweiten Semester habe ich mich dazu entschlossen, an meiner To-Do-List App weiterzuarbeiten. Im ersten Semester habe ich dafür ein Konzept erstellt, die Logik für To-Do Listen mit Kategorien im Backend mit NestJs implementiert und dafür mittels Ionic ein Frontend entwickelt.</p>



<p>Blogartikel aus dem ersten Semester: https://akirchknopf-21110.php.fhstp.cc/allgemein/yet-another-to-do-list-app/</p>



<h2 class="wp-block-heading">Design</h2>



<p>Für dieses Semester wollte ich mich vor allem darauf konzentrieren, ein eigenes Design zu erstellen und dieses umzusetzen. Dafür habe ich zwei unterschiedliche Screendesigns mit Adobe XD für jede bereits vorhandene Seite im bestehenden Projekt erstellt. Dabei habe ich jeweils eine dunkle und helle Version designt.</p>



<p>Auch die Umsetzung in Ionic hat gut funktioniert, vor allem da Adobe XD auch dass CSS erstellt. Einzig mit dem Design des Dropdowns für die Kategoriefarben hatte ich Probleme.</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1540" height="800" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2022/06/xd-screen-1540x800.jpg" alt="" class="wp-image-9992" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2022/06/xd-screen-1540x800.jpg 1540w, https://mobile.fhstp.ac.at/wp-content/uploads/2022/06/xd-screen-770x400.jpg 770w" sizes="(max-width: 1540px) 100vw, 1540px" /><figcaption>Screendesigns mit Adobe XD für hellen und dunklen Hintergrund</figcaption></figure>



<p>Bereits in der Version aus dem ersten Semester konnte der Nutzer für jede Kategorie eine eigene Farbe festlegen. Dieses System habe ich so verändert, dass der Nutzer jetzt aus sieben Farben eine auswählen kann, die sich dann farblich an den hellen oder dunkeln Hintergrund anpasst. Somit kann die Lesbarkeit besser gewährleistet werden, ohne dass der Nutzer selbst darauf aufpassen muss.</p>



<h2 class="wp-block-heading">Docker</h2>



<p>Neben dem Design war auch die Integration von Docker ein Fokus für mich in diesem Semester, da ich mich mit dem Konzept von Container beschäftigen wollte. Dafür habe ich sowohl ein Docker Compose File für das ganze Konzept, mit Frontend, Backend und Datenbank, angelegt. Zusätzlich habe ich auch zwei Dockerfiles, je eines fürs Front- und eines fürs Backend erstellt. Mittels einer .env Datei, übergebe ich die richtigen Ports.</p>



<p>Dabei habe ich zuerst einige Fehler gemacht, da ich erst das Konzept von Container besser verstehen musste. Nachdem ich mich aber in das Thema eingelesen und einige Tutorials dazu angeschaut habe, konnte ich die Container erstellen.</p>



<h2 class="wp-block-heading">Was habe ich nicht geschafft?</h2>



<p>Eigentlich habe ich mir für dieses Semester auch vorgenommen, die App um einige Funktionen zu erweitern, die mehr in die Richtung Projektmanagement gehen. Diese Erweiterungen waren geplant:</p>



<ul class="wp-block-list"><li>Deadlines für Items einstellen</li><li>Benachrichtigungen für diese Deadlines</li><li>einen Kalender, in dem man die Deadlines sieht</li><li>einen Tagesplanner, in dem man Items hinzufügen kann</li><li>einen Fokustimer</li></ul>



<p>Im nächsten Semester möchte ich an der App weiterarbeiten und die Anwendung um diese Features erweitern. Dabei möchte ich auch die App in eine PWA umwandeln und auf einem Smartphone testen.</p>
<p>The post <a href="https://mobile.fhstp.ac.at/studium/studium-projekte/yet-another-to-do-list-app-part-2/">YET, another to-do-list app &#8211; Part 2</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Material Design 3</title>
		<link>https://mobile.fhstp.ac.at/allgemein/material-design-3/</link>
		
		<dc:creator><![CDATA[Eva Altenburger]]></dc:creator>
		<pubDate>Wed, 23 Feb 2022 15:07:19 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Design]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=9655</guid>

					<description><![CDATA[<p>Gemeinsam mit Android 12 wurde letztes Jahr die nächste Instanz von Material Design vorgestellt: Material Design 3 (M3) oder auch Material You. Google hat die erste Version von Material Design 2014 vorgestellt. Mit diesen Guidelines und Komponenten haben sie versucht, Design zu vereinfachen und einheitlicher zu gestalten. </p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/material-design-3/">Material Design 3</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Gemeinsam mit Android 12 wurde letztes Jahr die nächste Instanz von Material Design vorgestellt: Material Design 3 (M3) oder auch Material You.</p>



<p>Google hat die erste Version von Material Design 2014 vorgestellt. Mit diesen Guidelines und Komponenten haben sie versucht, den Designprozess für Apps und Webseiten zu vereinfachen und einheitlicher zu gestalten. Damit sollte die User Experience verbessert und konstanter werden.</p>



<p>Mit der neuesten Version wollen sie das Design persönlicher machen und gleichzeitig gewährleisten, dass die Funktionalität weiter verbessert wird. Doch welche Vorteile bringt Material Design?</p>



<h2 class="wp-block-heading"><strong>Sollte man Material Design verwenden?</strong></h2>



<p>Material Design besteht nicht nur aus Guidelines, wenn es verwendet wird, ist das Design Teil eines bestehenden Systems. Damit können komplexe Probleme strukturiert gelöst werden. Ein weiterer Vorteil ist, dass Google die Dokumentation immer weiter verbessert und genau angibt, wie das Design erstellt und umgesetzt werden kann. Trotzdem ist man bei der Erstellung nicht komplett eingeschränkt und man kann sein eigenes Design verwirklichen. Wenn man Material Design verwendet, ist es auch einfacher, die User Experience zu verbessern.</p>



<p>Der größte Nachteil an Material Design ist die Erkennbarkeit. Wenn es verwendet wird, wird sofort eine Nähe zu Google und Android suggeriert. Ein weiterer Nachteil entsteht, wenn nicht alle Guidelines genauso umgesetzt werden. Wenn z.B. die Animationen weggelassen werden, kann es sein, dass das dem Nutzer negativ auffällt. Da Material Design von einigen Anwendungen umgesetzt wird, ist der Nutzer die zusammenpassenden Features gewöhnt.</p>



<p>Material Design bringt vor allem dann viele Vorteile, wenn man eine Android Applikation entwickelt. In dem Fall ist sichtbare die Nähe zu Google ein großer Nachteil. Mit Material Design 3 wurde das Design erweitert und verbessert.</p>



<h2 class="wp-block-heading"><strong>Was ist neu mit M3?</strong></h2>



<p>Die Oberfläche wurde neugestaltet, sowohl die Komponenten als auch die Farbschemas. Mithilfe des Hintergrunds, der vom Nutzer eingestellt wird, werden die Farben des Systems angepasst. Die Anpassungen an die Größe und Funktionalitäten des Geräts wurden verbessert. Zusätzlich wurde auch in Sachen Barrierefreiheit einiges verbessert, z.B. der Kontrast oder die Schriftart. Im folgenden werden drei Erneuerungen von M3 vorgestellt:</p>



<div class="wp-block-media-text alignwide is-stacked-on-mobile"><figure class="wp-block-media-text__media"><img loading="lazy" decoding="async" width="1352" height="800" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2022/02/dyn-Farben-1352x800.jpg" alt="" class="wp-image-9685 size-full" /></figure><div class="wp-block-media-text__content">
<h3 class="wp-block-heading"><strong>dynamische Farben</strong></h3>



<p>Mit Material You ist es als Nutzer möglich, eigene Farbschemas zu erstellen. Anhand des Hintergrunds werden diese Schemas erstellt, wobei der Nutzer entscheiden kann, welches er für sein Gerät verwenden möchte. Damit werden UI-Elemente des Systems, wie die Einstellungen, oder System Apps, wie z.B. die Uhr-App oder die Taschenrechner-App, eingefärbt.</p>
</div></div>



<div class="wp-block-media-text alignwide has-media-on-the-right is-stacked-on-mobile"><figure class="wp-block-media-text__media"><img loading="lazy" decoding="async" width="1540" height="800" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2022/02/fold-dev-1540x800.jpg" alt="" class="wp-image-9686 size-full" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2022/02/fold-dev-1540x800.jpg 1540w, https://mobile.fhstp.ac.at/wp-content/uploads/2022/02/fold-dev-770x400.jpg 770w" sizes="auto, (max-width: 1540px) 100vw, 1540px" /></figure><div class="wp-block-media-text__content">
<h3 class="wp-block-heading"><strong>Guidelines für faltbare Geräte</strong></h3>



<p>In der neueste Material Design Version wurden Guidelines für faltbare Geräte vorgestellt. Dabei werden die Positionierung und Erreichbarkeit für den ein- und ausgeklappten Zustand bedacht. Zusätzlich gibt es Regeln für die Aufteilung und das Gelenk.</p>
</div></div>



<div class="wp-block-media-text alignwide is-stacked-on-mobile"><figure class="wp-block-media-text__media"><img loading="lazy" decoding="async" width="1352" height="600" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2022/02/design-token.png" alt="" class="wp-image-9688 size-full" /></figure><div class="wp-block-media-text__content">
<h3 class="wp-block-heading"><strong>Design Tokens</strong></h3>



<p>Mit Design Tokens können Werte, z.B. für die Farben und die Schriftart, gespeichert und in der ganzen Anwendung verwendet werden. Damit kann man das Design und den Code konsistenter erstellen. Es gibt sowohl Referenz- und System-Tokens. Sie werden verwendet, um statische Werte zu ersetzen. Der Name der Tokens folgt dabei einer logischen Struktur. Die Design Tokens erleichtern außerdem die Anpassbarkeit des Designs, da sie dynamisch verwendet werden.</p>
</div></div>



<h2 class="wp-block-heading"><strong>hilfreiche Tools</strong></h2>



<p>Wenn man sein Design nach den Guidelines von Material You erstellen möchte, stellt Google einige Hilfsmittel zur Verfügung.</p>



<p>Für Figma gibt es sowohl ein Design Kit als auch einen Material Theme Builder als Plugin. Im Design Kit gibt es eine Übersicht über die Typographie, Icons und Farben als auch hilfreiche Links. Damit erhält man eine Vorschau, wie die einzelnen Komponenten umgesetzt wurden.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1390" height="711" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2022/02/figma.png" alt="" class="wp-image-9683" /><figcaption>Screenshot des Design Kits der Buttons und Cards Komponenten</figcaption></figure>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Mithilfe des Material Theme Builder Plugins wird die Auswahl der Farben erleichtert. Dabei kann man sowohl ein eigenes Bild hochladen oder selbst eine Farbe auswählen. Damit werden dann primary, secondary, tertiary und neutral Farben erstellt. Das Theme kann dann in Figma verwendet werden oder für <strong><a href="https://developer.android.com/jetpack/androidx/releases/compose-material3" target="_blank" rel="noreferrer noopener">Jetpack Compose</a></strong>,<strong> <a href="https://m3.material.io/libraries/mdc-android/getting-started" target="_blank" rel="noreferrer noopener">Android Views</a></strong> und als <strong>Material Tokens</strong> exportiert werden.</p>



<p>Diesen Material Theme Builder gibt es auch als Website mit denselben Funktionen. Dabei können die Farben zusätzlich für <strong>Flutter</strong> und <strong>CSS</strong> exportiert werden.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1540" height="800" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2022/02/Bildschirmfoto-2022-02-23-um-12.08.33-2-1540x800.jpg" alt="" class="wp-image-9684" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2022/02/Bildschirmfoto-2022-02-23-um-12.08.33-2-1540x800.jpg 1540w, https://mobile.fhstp.ac.at/wp-content/uploads/2022/02/Bildschirmfoto-2022-02-23-um-12.08.33-2-770x400.jpg 770w" sizes="auto, (max-width: 1540px) 100vw, 1540px" /><figcaption>Screenshot des Material Theme Builders: <a href="https://material-foundation.github.io/material-theme-builder/#/dynamic" target="_blank" rel="noreferrer noopener">https://material-foundation.github.io/material-theme-builder/#/dynamic</a></figcaption></figure>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<p>Zusätzlich hat Google Guides mit Codelab zur Umsetzung von Material Design 3 veröffentlicht. Dabei wird Schritt für Schritt erklärt, wie dynamische Farben in Android umgesetzt werden können. </p>



<p>Der erste Guide erklärt, wie man das Design in Figma erstellt: <br><a href="https://codelabs.developers.google.com/visualize-dynamic-color#0">https://codelabs.developers.google.com/visualize-dynamic-color#0</a></p>



<p>Der zweite beinhaltet Anweisung zur Umsetzung in Android: <a href="https://codelabs.developers.google.com/codelabs/apply-dynamic-color#0">https://codelabs.developers.google.com/codelabs/apply-dynamic-color#0</a></p>



<p>Mit diesen Blogeinträgen bietet Google gute Grundlagen um mit Material Design 3 anzufangen.</p>



<div style="height:25px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading">Quellen:</h2>



<p><a href="https://material.io/blog/announcing-material-you">https://material.io/blog/announcing-material-you</a></p>



<p><a href="https://m3.material.io">https://m3.material.io</a></p>



<p><a href="https://www.toptal.com/designers/ui/why-use-material-design">https://www.toptal.com/designers/ui/why-use-material-design</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/material-design-3/">Material Design 3</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>YET, another to-do-list app</title>
		<link>https://mobile.fhstp.ac.at/allgemein/yet-another-to-do-list-app/</link>
		
		<dc:creator><![CDATA[Eva Altenburger]]></dc:creator>
		<pubDate>Wed, 23 Feb 2022 15:04:55 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Cross Plattform]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Projekte]]></category>
		<category><![CDATA[Studium]]></category>
		<category><![CDATA[Webdevelopment]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=9719</guid>

					<description><![CDATA[<p>Als erstes eigenständiges Projekt in der Masterklasse Mobile habe ich mich dazu entschlossen, eine To-Do-List App zu entwickeln. Mein Hauptziel war es mich selbständig mit Frameworks zu beschäftigen und Erfahrungen im Front- und Backend Bereich zu sammeln. </p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/yet-another-to-do-list-app/">YET, another to-do-list app</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Als erstes eigenständiges Projekt in der Masterklasse Mobile habe ich mich dazu entschlossen, eine To-Do-List App zu entwickeln. Mein Hauptziel war es mich selbständig mit Frameworks zu beschäftigen und Erfahrungen im Front- und Backend Bereich zu sammeln.</p>



<h2 class="wp-block-heading">Das Konzept</h2>



<p>Das Konzept ist eine einfache To-Do-List App, bei der man als Nutzer Kategorien und Listen anlegen kann. Man kann sich als Nutzer registrieren und dann Kategorien hinzufügen, in der man wiederum Listen mit Items zum Abhacken erstellen kann.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1996" height="1080" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2022/02/Gruppe-2.png" alt="" class="wp-image-9725" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2022/02/Gruppe-2.png 1996w, https://mobile.fhstp.ac.at/wp-content/uploads/2022/02/Gruppe-2-1536x831.png 1536w" sizes="auto, (max-width: 1996px) 100vw, 1996px" /><figcaption>Screenshots aus dem Projekt auf iOS</figcaption></figure>



<h2 class="wp-block-heading">Backend</h2>



<p>Für den Backend Bereich habe ich mich dazu entschlossen NestJS mit TypeOrm und MySQL zu verwenden. Die Logik der App ist sehr simpel. Es können Nutzer angelegt werden, wobei das Password mit bcrypt geschützt wird. Bei einem Login wird ein JWT per http only cookie mitgeschickt. Für die Kategorien, Listen und Items gibt es nur die klassischen CRUD Funktionen.</p>



<h2 class="wp-block-heading">Frontend</h2>



<p>Das Frontend habe ich mit Ionic und Angular umgesetzt. Um den http only cookie aus dem Request abzufangen, wird axios für die gesamten Kommunikation mit dem Backend verwendet.</p>



<p>Die App ist so aufgebaut, dass auf der Startseite eine Übersicht über alle Kategorien zu sehen ist. Dort findet man auch einen Button, um eine Kategorie zu erstellen. Dabei kann man nicht nur einen Namen vergeben, sondern sich selbst eine Farbe mithilfe eines HTML Color Picker aussuchen. Damit wird sowohl der Titel als auch der Rahmen der Kategorie eingefärbt.</p>



<p>Wenn man auf eine Kategorie oder eine Liste klickt, bekommt man diese in einer Einzelsicht. Auf jeder Übersichtsseite ist es möglich, die Items abzuhacken.</p>



<h2 class="wp-block-heading">Learnings</h2>



<p>Mir hat es sehr viel gebraucht, dass Projekt alleine umzusetzen. Deswegen musste ich mich mit jedem Bereich genau auseinandersetzen und konnte viele Erfahrungen sammeln. </p>



<p>Ich habe gelernt, dass ich mir für das Konzept und die Umsetzung des Designs mehr Zeit nehmen muss. Mein eigentliches Ziel war es, auch bereits ein eigenständiges Design zu programmieren. Bis jetzt habe ich es nur geschafft, die bereits von Ionic vorgegeben Komponenten zu nutzen und Kleinigkeiten zu personalisieren. In Zukunft möchte ich aber auch mit eigenen Ideen aufkommen und diese umsetzen.</p>



<h2 class="wp-block-heading">Erweiterungen</h2>



<p>Ich könnte mir vorstellen, dass Projekt im nächsten Semester weiterzuentwickeln. Dabei würde ich mich vor allem auf das Design konzentrieren und neue Features wie einen Study Timer, einen Kalender mit Deadlines und eine Visualisierung über die Fortschritte einbauen.</p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/yet-another-to-do-list-app/">YET, another to-do-list app</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Android 12</title>
		<link>https://mobile.fhstp.ac.at/allgemein/android-12/</link>
		
		<dc:creator><![CDATA[Eva Altenburger]]></dc:creator>
		<pubDate>Sat, 19 Feb 2022 12:42:06 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Native Development]]></category>
		<guid isPermaLink="false">https://akirchknopf-21110.php.fhstp.cc/?p=9467</guid>

					<description><![CDATA[<p>Im Herbst 2021 wurde die neueste Android Version vorgestellt: Android 12. Diese Version bringt sehr viele Änderungen mit sich. Eine der größten ist das überarbeitete Design. Mit Material You wird Material Design ausgetauscht und neu gestaltet. Das wirkt sich sowohl auf die UI-Elemente als auch die Farben aus. Neben den äußerlichen Änderungen gibt es auch Verbesserungen bei der Sicherheit und Privatsphäre.</p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/android-12/">Android 12</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Im Herbst letzten Jahres wurde die neue Android Version, Android 12, vorgestellt. Mit dieser neuen Version wurden einige größere Veränderungen vorgenommen:</p>



<h2 class="wp-block-heading">Design</h2>



<p>Die größte Änderung ist das Aussehen. Mit <em>Material You</em> wurde eine neue Oberfläche vorgestellt, die komplett neugestaltet wurde. Das generelle Aussehen soll freundlicher und weniger mechanisch wirken. Daher wurden so gut wie alle UI-Elemente neugestaltet.</p>



<p>Das Design ist etwas runder und es gibt mehr White Space. Vor allem die Widgets bekommen damit einen neuen Look. Die Animationen wurden ebenfalls angepasst, damit die Oberfläche dynamischer wirkt. Neben den UI Elementen wurde auch die Schrift weiter verändert, so wird bei <em>Material You</em> die neue Schriftart <em>Google Sans </em>verwendet.</p>



<p>Eine weitere große Änderung bei <em>Material You</em> ist die Persönlichkeitskomponente, die bei den Farben möglich ist. Es gibt jetzt nicht nur dynamische Farben, die sich dem Hintergrund anpassen, man kann sogar selbst einstellen, wie Benachrichtigungen, Einstellungen und Widgets aussehen sollen.</p>



<p>Dabei kann man aus mehreren Farbpaletten auswählen, die anhand des Hintergrunds generiert wurden. Dabei gibt es Vorschläge sowohl für den Light als auch für den Dark Mode. Google versichert dabei, dass ein optimaler Kontrast erhalten bleibt. Als Nutzer hat man jetzt auch die Möglichkeit Themed Icons auszuwählen, auch wenn diese bisher nur bei Google internen Apps funktionieren. Diese Themed Icons passen sich ebenfalls den ausgewählten Farben an.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1540" height="693" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2022/02/android12colors-1540x693.jpeg" alt="" class="wp-image-9468" /><figcaption>Quelle: <a href="https://www.derstandard.at/story/2000129892774/android-12-das-groesste-smartphone-update-seit-jahren-im-test" target="_blank" rel="noreferrer noopener">https://www.derstandard.at/story/2000129892774/android-12-das-groesste-smartphone-update-seit-jahren-im-test</a></figcaption></figure>



<p>Die Bedienhilfen werden weiterhin laufend verbessert. So gibt es jetzt die Möglichkeit an bestimmten Stellen zu Zoomen, ohne den Kontext des anderen Inhalts zu überdecken.</p>



<p>Außerdem kann bei der Schrift nicht nur die Größe, sondern auch der Stil auf Fett die eingestellt werden. Bei der Color Correction gibt es mehr Möglichkeiten die Graustufen anzupassen.</p>



<h2 class="wp-block-heading">Sicherheit</h2>



<p>Ein weiterer Fokus von Android 12 ist die Verbesserung im Bereich der Privatsphäre. In dieser Version wurde ein eigenes Privacy Dashboard eingeführt, das einem eine bessere Übersicht über die Berechtigung aller Apps bringt. So sieht man sofort welche Apps einen Zugriff auf den Standort, die Kamera, das Mikrofon oder andere Freigaben haben. In dieser Übersicht können diese Berechtigungen auch eingeschränkt werden.</p>



<p>Mit dieser Übersicht will Google auch mehr Transparenz über die Sicherheit geben, da es für einige Apps sogar eine Zeitlinie über die Aktivitäten und Zugriffe gibt.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1540" height="800" src="https://akirchknopf-21110.php.fhstp.cc/wp-content/uploads/2022/02/android12privacy-1540x800.jpeg" alt="" class="wp-image-9469" srcset="https://mobile.fhstp.ac.at/wp-content/uploads/2022/02/android12privacy-1540x800.jpeg 1540w, https://mobile.fhstp.ac.at/wp-content/uploads/2022/02/android12privacy-770x400.jpeg 770w" sizes="auto, (max-width: 1540px) 100vw, 1540px" /><figcaption>Quelle: <a href="https://www.derstandard.at/story/2000129892774/android-12-das-groesste-smartphone-update-seit-jahren-im-test" target="_blank" rel="noreferrer noopener">https://www.derstandard.at/story/2000129892774/android-12-das-groesste-smartphone-update-seit-jahren-im-test</a></figcaption></figure>



<p>Neben dieser Übersicht ist es mit Android 12 auch möglich, Kamera und Mikrofon systemweit zu deaktivieren. Bei den Standortinformationen, kann definiert werden, wie genau der Standort übergeben werden darf. Somit kann man selbst einstellen, wie viele Daten über den Standort preisgegeben werden.</p>



<h2 class="wp-block-heading">Für Developer</h2>



<p>Als Developer gibt es einige Neuerungen, auf die man bei der Entwicklung aufpassen sollte. Bei der Usability gibt es einige Verhaltensänderungen z.B. beim Scrollen und bei Splash Screens als auch Anpassungen bei der Errechnung der Bildschirmgrößen. Eine weitere Änderung sind die Benachrichtigungen. Sie können jetzt nicht mehr komplett selbst gestaltet werden, ab Android 12 müssen sie einem bestimmten Template folgen. </p>



<p>Eine Übersicht über alle Veränderungen kann hier gefunden werden: <a href="https://developer.android.com/about/versions/12/summary"><a href="https://developer.android.com/about/versions/12/summary">https://developer.android.com/about/versions/12/summary</a></a></p>



<h2 class="wp-block-heading">Android 13</h2>



<p>Die erste Developer Preview für Android 13 wurde bereits veröffentlicht. In dieser ersten Preview liegt der Fokus hauptsächlich darauf, Android 12 zu verbessern und zu erweitern. So wird <em>Material You</em> weiterentwickelt, z.B. wurden weitere Icons vorgestellt. Ein weiterer wichtiger Punkt ist die Sicherheit. Android 13 soll weitere Möglichkeiten zur Einschränkung verschiedenerer Berechtigungen bringen. Laut der offiziellen Preview soll die neue Version nach Juli 2022 veröffentlicht werden.</p>



<h2 class="wp-block-heading">Quellen</h2>



<p><a href="https://developer.android.com/about/versions/12">https://developer.android.com/about/versions/12</a></p>



<p><a href="https://www.android.com/intl/de_de/android-12/">https://www.android.com/intl/de_de/android-12/</a></p>



<p><a href="https://www.derstandard.at/story/2000129892774/android-12-das-groesste-smartphone-update-seit-jahren-im-test">https://www.derstandard.at/story/2000129892774/android-12-das-groesste-smartphone-update-seit-jahren-im-test</a></p>



<p><a href="https://www.derstandard.at/story/2000133289559/mehr-privatsphaere-neue-app-icons-developer-preview-fuer-android-13?ref=rss">https://www.derstandard.at/story/2000133289559/mehr-privatsphaere-neue-app-icons-developer-preview-fuer-android-13?ref=rss</a></p>



<p><a href="https://android-developers.googleblog.com/2022/02/first-preview-android-13.html">https://android-developers.googleblog.com/2022/02/first-preview-android-13.html</a></p>
<p>The post <a href="https://mobile.fhstp.ac.at/allgemein/android-12/">Android 12</a> appeared first on <a href="https://mobile.fhstp.ac.at">Mobile USTP MKL</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
