update
This commit is contained in:
parent
c7a38ea9a7
commit
74a5cf12e3
13
Bachelor.bib
13
Bachelor.bib
@ -154,6 +154,19 @@
|
||||
file = {/Users/fabian/Zotero/storage/3K7HX2EI/flutter-on-raspberry-pi-mostly-from-scratch-2824c5e7dcb1.html}
|
||||
}
|
||||
|
||||
@online{gfallonItFOSSToyota2019,
|
||||
title = {It's {{FOSS}}: {{Toyota Motors}} and Its {{Linux Journey}}},
|
||||
shorttitle = {It's {{FOSS}}},
|
||||
author = {{gfallon}},
|
||||
date = {2019-01-11T18:41:12+00:00},
|
||||
url = {https://www.automotivelinux.org/in-the-news/its-foss-toyota-motors-and-its-linux-journey/},
|
||||
urldate = {2024-03-10},
|
||||
abstract = {All Toyota vehicles and Lexus vehicles are going to use Automotive Grade Linux (AGL) majorly for the infotainment system. This is instrumental in Toyota Motor Corp because as per Brian...},
|
||||
langid = {american},
|
||||
organization = {Automotive Grade Linux},
|
||||
file = {/Users/fabian/Zotero/storage/RI36I2EG/its-foss-toyota-motors-and-its-linux-journey.html}
|
||||
}
|
||||
|
||||
@online{googleinc.DartLanguageEvolution,
|
||||
title = {Dart Language Evolution},
|
||||
author = {{Google Inc.}},
|
||||
|
BIN
assets/.DS_Store
vendored
BIN
assets/.DS_Store
vendored
Binary file not shown.
Binary file not shown.
BIN
assets/screenshots/.DS_Store
vendored
BIN
assets/screenshots/.DS_Store
vendored
Binary file not shown.
BIN
assets/skizzen/.DS_Store
vendored
Normal file
BIN
assets/skizzen/.DS_Store
vendored
Normal file
Binary file not shown.
BIN
assets/skizzen/alle.png
Normal file
BIN
assets/skizzen/alle.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.8 MiB |
@ -86,3 +86,5 @@ postbreak=\mbox{\textcolor{red}{$\hookrightarrow$}\space},
|
||||
\pretocmd{\dirtree}{\bigskip}{}{}
|
||||
|
||||
\newcommand{\mkbibnodate}{n\adddot d\adddot}
|
||||
|
||||
\setlength{\parindent}{0em}
|
||||
|
0
chapters/02_einleitung/03_gliederung.md
Normal file
0
chapters/02_einleitung/03_gliederung.md
Normal file
@ -4,6 +4,8 @@
|
||||
|
||||
## Hardware
|
||||
|
||||
### Hardware für die Demo Anwendung
|
||||
|
||||
- Raspberry Pi 4
|
||||
- Touchscreen 15 Zoll (1920x1080)
|
||||
- Raspberry Pi 0 2W
|
||||
@ -11,88 +13,23 @@
|
||||
- RGB Matrix
|
||||
- Led
|
||||
|
||||
### Build Hardware
|
||||
|
||||
- AMD 6800U mit 16GB RAM, Linux
|
||||
|
||||
\pagebreak
|
||||
|
||||
## Anforderungen
|
||||
|
||||
\begin{multicols}{3}
|
||||
\Begin{multicols}{2}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Home Screen}
|
||||
\caption{Skizzen der Anwendung}
|
||||
\centering
|
||||
{\includegraphics[width=2in]{./assets/skizzen/home.png}}
|
||||
{\includegraphics[width=4in]{./assets/skizzen/alle.png}}
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Material 3 Widgets}
|
||||
\centering
|
||||
{\includegraphics[width=2in]{./assets/skizzen/materialWidgets.png}}
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
lorem ipsum
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Video Player}
|
||||
\centering
|
||||
{\includegraphics[width=2in]{./assets/skizzen/video.png}}
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\end{multicols}
|
||||
|
||||
\begin{multicols}{3}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Led Controller}
|
||||
\centering
|
||||
{\includegraphics[width=2in]{./assets/skizzen/led.png}}
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Matrix Painter}
|
||||
\centering
|
||||
{\includegraphics[width=2in]{./assets/skizzen/matrix.png}}
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{System Informationen}
|
||||
\centering
|
||||
{\includegraphics[width=2in]{./assets/skizzen/systeminfo.png}}
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\end{multicols}
|
||||
|
||||
\begin{multicols}{3}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Unendliche Liste}
|
||||
\centering
|
||||
{\includegraphics[width=2in]{./assets/skizzen/openapi.png}}
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Kartenansicht}
|
||||
\centering
|
||||
{\includegraphics[width=2in]{./assets/skizzen/openstreetmap.png}}
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Einstellungen}
|
||||
\centering
|
||||
{\includegraphics[width=2in]{./assets/skizzen/einstellungen.png}}
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\end{multicols}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Endless Runner}
|
||||
\centering
|
||||
{\includegraphics[width=2in]{./assets/skizzen/dashgame.png}}
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
\End{multicols}
|
||||
|
@ -118,3 +118,7 @@ unveränderlichen Klasse:
|
||||
- toString, equlas, hashCode Methode
|
||||
- copyWith Methode
|
||||
- JSON Serialisierung
|
||||
|
||||
### State Management
|
||||
|
||||
Für das State Management wurde Riverpod gewählt.
|
||||
|
@ -137,3 +137,8 @@ Tools • Dart 3.3.0 • DevTools 2.31.1
|
||||
```
|
||||
|
||||
## Setup von Raspberry Pi -->
|
||||
|
||||
### Raspberry Pi OS
|
||||
|
||||
- Einrichtung als Entwicklungsbetriebssystem mit Flutter Hot-Reload
|
||||
- für rapide Entwicklung und Testen
|
@ -78,12 +78,21 @@ Key Design Concepts:
|
||||
|
||||
## Implementierung der Features
|
||||
|
||||
Im Folgenden wird die Implementierung der
|
||||
einzelnen Features des Projektes beschrieben.
|
||||
|
||||
\pagebreak
|
||||
|
||||
### Home
|
||||
### Home Feature
|
||||
|
||||
\begin{figure}[ht]
|
||||
\caption{Example caption}
|
||||
Das Home-Feature ist die Startseite der App. Es
|
||||
besteht aus einem einfachen Screen, der
|
||||
nur den Text "Flutter on Embedded Linux" anzeigt.
|
||||
|
||||
\Begin{multicols}{2}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Ordnerstruktur des Home-Features}
|
||||
\centering
|
||||
\begin{minipage}{7cm}
|
||||
\dirtree{%
|
||||
@ -94,8 +103,6 @@ Key Design Concepts:
|
||||
\end{minipage}
|
||||
\end{figure}
|
||||
|
||||
\begin{multicols}{2}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Home Screen}
|
||||
\centering
|
||||
@ -103,21 +110,21 @@ Key Design Concepts:
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Home Screen}
|
||||
\centering
|
||||
{\includegraphics[width=8cm]{./assets/screenshots/homeDebug.png}}
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\end{multicols}
|
||||
\End{multicols}
|
||||
|
||||
\pagebreak
|
||||
|
||||
### Material Demo
|
||||
### Material Demo Feature
|
||||
|
||||
\begin{figure}[ht]
|
||||
\caption{Example caption}
|
||||
Das Material Demo Feature zeigt eine Auswahl
|
||||
von Material Design Widgets. Es besteht aus
|
||||
einem Screen, der eine Liste von Widgets
|
||||
anzeigt.
|
||||
|
||||
\Begin{multicols}{2}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Ordnerstruktur des Material Demo Features}
|
||||
\centering
|
||||
\begin{minipage}{10cm}
|
||||
\dirtree{%
|
||||
@ -130,28 +137,30 @@ Key Design Concepts:
|
||||
\end{minipage}
|
||||
\end{figure}
|
||||
|
||||
\begin{multicols}{2}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Home Screen}
|
||||
\caption{Material Demo Screen}
|
||||
\centering
|
||||
{\includegraphics[width=8cm]{./assets/screenshots/material3.png}}
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[H]
|
||||
\End{multicols}
|
||||
|
||||
<!-- \begin{figure}[H]
|
||||
\caption{Home Screen}
|
||||
\centering
|
||||
{\includegraphics[width=8cm]{./assets/screenshots/material3Dialog.png}}
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\end{multicols}
|
||||
\end{figure} -->
|
||||
|
||||
\pagebreak
|
||||
|
||||
### Benchmark
|
||||
|
||||
Das Benchmark Feature zeigt verschiedene
|
||||
Benchmarks, die die Leistungsfähigkeit von
|
||||
Flutter auf Embedded Linux demonstrieren.
|
||||
|
||||
\begin{figure}[h]
|
||||
\caption{Example caption}
|
||||
\centering
|
||||
@ -258,7 +267,12 @@ Key Design Concepts:
|
||||
|
||||
### News
|
||||
|
||||
\begin{figure}[ht]
|
||||
Das News Feature zeigt eine Liste von Nachrichten
|
||||
der Tagesschau.
|
||||
|
||||
\Begin{multicols}{2}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Example caption}
|
||||
\centering
|
||||
\begin{minipage}{7cm}
|
||||
@ -286,8 +300,6 @@ Key Design Concepts:
|
||||
\end{minipage}
|
||||
\end{figure}
|
||||
|
||||
\begin{multicols}{2}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Home Screen}
|
||||
\centering
|
||||
@ -302,7 +314,22 @@ Key Design Concepts:
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\end{multicols}
|
||||
\End{multicols}
|
||||
|
||||
\pagebreak
|
||||
|
||||
#### Freezed
|
||||
|
||||
wurde verwendet, um die Modelle zu generieren.
|
||||
|
||||
\lstinputlisting[language=Java, caption=Implementierung der News Klasse, linerange={0-20}, captionpos=t]
|
||||
{code/flutter_elinux/lib/features/news_api/data/models/news.dart}
|
||||
|
||||
\lstinputlisting[language=Java, caption=Implementierung des News Controllers, captionpos=t]
|
||||
{code/flutter_elinux/lib/features/news_api/data/repository/news_repository.dart}
|
||||
|
||||
\lstinputlisting[language=Java, caption=Implementierung des News Controllers, captionpos=t]
|
||||
{code/flutter_elinux/lib/features/news_api/business/news_controller.dart}
|
||||
|
||||
\pagebreak
|
||||
|
||||
@ -341,6 +368,9 @@ Key Design Concepts:
|
||||
|
||||
\end{multicols}
|
||||
|
||||
\lstinputlisting[language=Java, caption=Implementierung des Morse Service, captionpos=t]
|
||||
{code/flutter_elinux/lib/features/morse_led/business/service/morse_service.dart}
|
||||
|
||||
\pagebreak
|
||||
|
||||
### Matrix
|
||||
@ -405,11 +435,16 @@ Key Design Concepts:
|
||||
|
||||
\end{multicols}
|
||||
|
||||
\lstinputlisting[language=Java, caption=Implementierung des Matrix Service, captionpos=t]
|
||||
{code/flutter_elinux/lib/features/matrix_rgb/business/service/matrix_service.dart}
|
||||
|
||||
\pagebreak
|
||||
|
||||
### System Informationen
|
||||
|
||||
\begin{figure}[ht]
|
||||
\Begin{multicols}{2}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Example caption}
|
||||
\centering
|
||||
\begin{minipage}{7cm}
|
||||
@ -433,11 +468,18 @@ Key Design Concepts:
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\End{multicols}
|
||||
|
||||
\lstinputlisting[language=Java, caption=Implementierung des Memory Service, captionpos=t]
|
||||
{code/flutter_elinux/lib/features/system_resources/business/service/memory_service.dart}
|
||||
|
||||
\pagebreak
|
||||
|
||||
### Einstellungen
|
||||
|
||||
\begin{figure}[ht]
|
||||
\Begin{multicols}{2}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Example caption}
|
||||
\centering
|
||||
\begin{minipage}{7cm}
|
||||
@ -462,8 +504,6 @@ Key Design Concepts:
|
||||
\end{minipage}
|
||||
\end{figure}
|
||||
|
||||
\begin{multicols}{2}
|
||||
|
||||
\begin{figure}[H]
|
||||
\caption{Home Screen}
|
||||
\centering
|
||||
@ -478,7 +518,7 @@ Key Design Concepts:
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\end{multicols}
|
||||
\End{multicols}
|
||||
|
||||
\pagebreak
|
||||
|
||||
@ -524,3 +564,8 @@ Key Design Concepts:
|
||||
{\includegraphics[width=8cm]{./assets/screenshots/settingsMaterial2.png}}
|
||||
\label{fig:screeplot}
|
||||
\end{figure}
|
||||
|
||||
\pagebreak
|
||||
|
||||
\lstinputlisting[language=Java, caption=Implementierung des Wifi Controllers, captionpos=t]
|
||||
{code/flutter_elinux/lib/features/settings/business/wifi_controller.dart}
|
@ -10,7 +10,7 @@
|
||||
\hline
|
||||
Flutter Embedder & Ergebnisse (Animationen nach 30 Minuten) & Durchschnittlich (gerundet) \\ \hline
|
||||
Flutter-Pi & 537, 543, 544 & 541 \\ \hline
|
||||
Flutter-Auto & 1025, 1163, 1129 & 1106 \\ \hline
|
||||
Flutter-Auto mit Cage & 1025, 1163, 1129 & 1106 \\ \hline
|
||||
\end{tabular}%
|
||||
}
|
||||
\end{table}
|
||||
|
Loading…
x
Reference in New Issue
Block a user