Einstieg in React Native
Dauer: 30 Minuten
- Expo Snack (IDE für React Native im Browser)
- Projekt auf dem Rechner erstellen
- App auf dem Handy oder Simulator laden
Ziel: Das erste Projekt erstellen
Programmieren im Browser mit Expo Snack
Zunächst wird Expo Snack gezeigt. Dies ist eine ziemlich mächtige Entwicklungsumgebung für React Native im Browser. Apps können dort programmiert und nebenbei für Android, iPhone und als Webanwendung simuliert werden.
Live Coding
- Aufbau und Verwendung Expo Snack
- Kleine Änderungen: z.B. Text, Farbe
- Code und Dateien auf Minimum reduzieren, sodass nur der Text
Hello, World!
erscheint
⟶ Wir werden hauptsächlich mit VS Code arbeiten.
⟶ In Expo Snack kann jedoch ebenso dem Live Coding gefolgt werden.
⟶ Der Zwischenstand des Live Codings kann für den Kurs in Expo Snack und GitHub gespeichert werden.
Die Notizen orientieren sich stark am Videokurs.
Nur die wichtigsten Aspekte werden grob erklärt, da diese ebenfalls im Videokurs behandelt werden.
Möglicherweise werden hier und im Live Coding andere Komponenten oder Konzepte gezeigt, die nicht im Videokurs vorkommen.
Projekt auf dem Rechner erstellen
Achtung: es wird mehrmals npx
verwendet (und nicht npm).
npx
steht für Node Package Execute. Es ist ein
Tool, das zusammen mit npm
geliefert wird, um
Node.js-Pakete auszuführen, insbesondere solche mit
Kommandozeilen-Schnittstellen (CLI), ohne diese global
installieren zu müssen.
- VS Code starten
- Verzeichnis für Projekte öffnen (z.B.
tmp
) - Terminal in VS Code anzeigen (
View - Terminal
) npx create-expo-app --template blank
im Terminal ausführen (Projekt erstellen)- Das neue, durch den vorigen Schritt erstellte Verzeichnis des Projekts in VS Code öffnen (
File - Open…
) App.js
im Editor öffnen und ggf. mit Code aus Expo Snack ersetzen (siehe „Hello, World!“ oben)- Terminal in VS Code anzeigen (
View - Terminal
) npx expo
im Terminal ausführen
App auf dem Handy testen
Um die App auf dem eigenen Handy zu testen, muss dort zunächst die App Expo Go installiert werden (im App Store bzw. Play Store suchen).
Im Terminal ist ein QR-Code zu sehen, mit dem die App auf dem Handy geladen werden kann. Dazu auf dem iPhone die Kamera-App verwenden, auf Android-Geräten kann der QR-Code-Scan aus Expo Go erfolgen.
Im WLAN bzw. Netzwerk der DHBW ist eine Kommunikation von Gerät zu Gerät (client-to-client) wegen Sicherheitseinschränkungen nicht möglich.
In diesem Fall kann der Expo-Server mit der Option --tunnel
gestartet werden:
npx expo --tunnel
Dann wird eine indirekte, öffentliche Netzwerk-Verbindung („Tunnel“) zwischen Rechner und Handy genutzt, siehe Tunneling in den Expo Docs.
Sollte es hierbei Probleme bei der Installation des benötigten Packages
ngrok
geben, dann kann die lokale Installation (npm i
ohne-g
) ein Workaround sein (Stand Oktober 2024).
Im „gewöhnlichen“ WLAN in Heimnetzwerken sollte es möglich sein, die App direkt auf dem Handy zu laden, solange Handy und Rechner im gleichen WLAN bzw. Netzwerk sind.
Ist ein Android-Gerät direkt per USB-Kabel mit dem Handy verbunden, dann kann der Expo-Server mit --localhost
gestartet werden:
npx expo --localhost
Durch Drücken von a
im Terminal wird die App dann auf dem Android-Gerät geladen
Projektverzeichnis, Dateien und Inhalt/Aufbau von
App.js
kurz erklären.
Vertiefendes Material
Abschnitt 3 im Videokurs
Weitere Zielplattformen von React Native: https://reactnative.dev/docs/out-of-tree-platforms