Zuerst müssen Sie die Datei app.json aus dem Hauptverzeichnis der Anwendung anpassen. Sie enthält alle für den Bau der App benötigten Parameter. Für einen ersten Wurf genügt es, lediglich einen Namen für das Package hinzuzufügen. Die angepasste Datei zeigt Listing 3.
Listing 3
{
"expo": {
"name": "Aura-Monitor",
"slug": "Aura-Monitor",
"privacy": "public",
"sdkVersion": "32.0.0",
"platforms": [
"ios",
"android"
],
"version": "1.0.0",
"orientation": "portrait",
"icon": "./assets/images/icon.png",
"splash": {
"image": "./assets/images/splash.png",
"resizeMode": "contain",
"backgroundColor": "#ffffff"
},
"updates": {
"fallbackToCacheTimeout": 0
},
"assetBundlePatterns": [
"**/*"
],
"ios": {
"supportsTablet": true
},
"android": {
"package":"<YOUR-PACKAGE-NAME>"
}
}
}
@L:Um die App für Android zu bauen, führen Sie aus dem App-Verzeichnis heraus das Kommando expo build:android aus. Zum Starten des Build-Prozesses benötigen Sie einen Expo-Account. Besitzen Sie noch keinen, können Sie ihn direkt hier erstellen.
Für einen ersten Test wählen Sie die Option Let Expo handle the process!. Je nach Auslastung der Build-Infrastruktur von Expo dauert es eine Weile, bis der Build startet. Das Terminal gibt alle Informationen aus, die Sie benötigen, um die Abläufe im Browser zu überwachen.
Nach Abschluss des Builds steht das fertige APK-File in Ihrem Expo-Profil zum Herunterladen bereit. Sie können die URL direkt weitergeben, was es auch anderen erlaubt, die App von der Expo-Seite zu beziehen. So ist es während der Entwicklungsphase möglich, schnell und unkompliziert die App an Tester zu verteilen.
Beim Installieren der App auf Ihrem Gerät taucht womöglich eine Warnung auf, dass das Paket aus einer unsicheren Quelle stammt. Das liegt daran, dass es nicht von einem der bekannten Stores signiert wurde, was aber bei einer selbst entwickelten App im Test keine Rolle spielt.
Fazit
Dieser Artikel zeigt, wie schnell sich mit React Native Apps erstellen und publizieren lassen. Auf Basis der Beispielapp lässt sich unschwer eine Anwendung bauen, die auch die Daten von anderen Geräten auswertet.
Daneben erlaubt das Wissen über die REST-Schnittstelle des Aura-Controllers, die Energieflüsse im eigenen Heim zu optimieren. Sie könnten zum Beispiel Geräte deaktivieren, sobald die Ladung des Aura-Speichers zur Neige geht. Alles in allem ist React Native eine tolle Möglichkeit, sich in die Entwicklung von Apps einzuarbeiten.
Der Autor
Der im Zeitalter der Magnetringkernspeicher geborene Martin Mohr studierte nach einer Ausbildung zum Elektroniker Informatik und entwickelte beruflich überwiegend Java-Applikationen. Mit dem Raspberry Pi erwachte die Liebe zur Elektronik wieder.
Infos
- Advanced REST Client: https://chrome.google.com/webstore/detail/advanced-rest-client/hgmloofddffdnphfgcellkdfbfbjeloo
- E.ON Aura: https://www.eon.de/aura
- RasPi als Server für React-Native-Apps: Martin Mohr, “Zugriff von außen”, RPG 10/2019, S. 26, http://www.raspberry-pi-geek.de/42995
- React-Navigation-Projekt: https://reactnavigation.org/en/
- React Native Vector Icons: https://oblador.github.io/react-native-vector-icons/
- Beschreibung des Build-Prozesses: https://docs.expo.io/versions/latest/distribution/building-standalone-apps/





