Man könnte sagen, es gibt drei Möglichkeiten, eine React Native-App
zu erstellen - eine mit Expo mit dem sogenannten verwalteten Workflow.
Dies ist der Ansatz, den wir im Kurs verwendet haben, und dies ist eine gestrichelte Linie, da
dies nicht wirklich der Fall ist Als Alternative zum Erstellen einer Nicht-Expo-App wird die Expo natürlich
stark berücksichtigt.
Dies ist der Ansatz, den wir im Kurs verwenden. Es ist einfach zu bedienen, hat so gut wie keine Einrichtung, es
funktioniert sofort, Sie können die App einfach auf einem realen Gerät testen, Sie haben viele native Module eingebaut, die super einfach zu installieren und zu verwenden sind.
Es wird über die Expo-CLI gesteuert. Geben Sie einfach npm start oder expo start ein, Sie haben die Expo-Entwicklungstools im
Browser, es ist einfach auf Simulatoren und realen Geräten auszuführen und Sie können immer noch eine eigenständige App erhalten, die Sie bereitstellen können. was, wie
ich erklärt habe, den expo client sozusagen als wrapper enthält. Da Sie es auch problemlos auf realen
Geräten testen können, müssen Sie technisch gesehen nicht einmal Android Studio oder Xcode
installieren, um eine App mit expo zu erstellen. Ich habe es installiert und Sie angewiesen, es auch für diesen Kurs
zu installieren, damit wir Simulatoren starten und dort testen können, weil ich es nicht ständig auf einem realen Gerät testen
und diesen Bildschirm aufzeichnen wollte, aber Sie tun es nicht. Um dies nicht zu tun, können Sie es auf einem
realen Gerät testen, auf dem nur die Expo-Client-App installiert ist. Das
können Sie also tun. Dies ist der
Ansatz, den wir verwendet haben, aber natürlich ist dies dann eine expo-schwere App, eine App, die
sich vollständig im Expo-Ökosystem befindet und alle von mir beschriebenen Einschränkungen oder Nachteile aufweist.
Eine Alternative dazu ist, dass Sie immer noch expo verwenden, aber den sogenannten nackten Workflow, oder
dass Sie mit der React Native-CLI eine React Native-App ohne expo erstellen.
Jetzt kann der Expo Bare Workflow entweder von Grund auf neu erstellt oder aus dem verwalteten Workflow ausgeworfen werden. Das
werde ich Ihnen auch in diesem Modul zeigen.
Wenn Sie jetzt eine App mit dem nackten Workflow erstellen, erhalten Sie eine Nicht-Expo-App. Sie erstellen eine native App, wie Sie
sie mit der React Native-CLI erstellen
würden, sodass Sie dort dieselbe Basis erhalten. Der
Unterschied besteht darin, dass Sie dies immer noch können Verwenden Sie spezielle Ausstellungspakete. Die Installation ist etwas komplexer als im
verwalteten Workflow. Sie müssen mehr manuelle Verkabelungsarbeiten durchführen, zumindest für einige Pakete, aber viele,
nicht alle, aber viele der Expo-Pakete, die im verwalteten Workflow enthalten sind sind als eigenständige Pakete
verfügbar, die Sie auch in jede React Native-App einbinden können. Das
Expo-Team arbeitet daran, immer mehr Pakete außerhalb des verwalteten Workflows verfügbar zu machen.
Sie können das also mitbringen und mit dem nackten Workflow ist es relativ einfach, diese Pakete hinzuzufügen, nicht so einfach und
schnell wie im Verwaltungsworkflow, aber dennoch sehr einfach. Wenn Sie eine App ohne Expo mit der React Native
CLI erstellen, können
Sie diese Pakete weiterhin mitbringen, es ist jedoch eine weitere manuelle Einrichtung erforderlich. Wie gesagt, es ist relativ einfach, im nackten
Workflow zu konfigurieren und zu verwalten. Sie müssen
mehr im React Native CLI-Workflow verwalten,
damit Sie wirklich alles ohne Unterstützung durch expo erstellen können. In Bezug auf die von Ihnen verwendeten nativen Module können Sie
jedes gewünschte native Modul verwenden, auch Nicht-Expo-Module. Sie können diese speziellen Expo-Pakete mitbringen, die Sie manuell
verkabeln müssen, aber Sie können jedes andere native Modul mitbringen.
Wenn wir nun die App erstellen und verteilen, sehen Sie mit dem verwalteten Workflow,
den Sie im Bereitstellungsmodul sehen, das sehr einfach zu erledigen ist. Mit dem nackten Workflow ist es in Anführungszeichen etwas "schwieriger", es
erfordert mehr Arbeit mit Android Studio und Xcode und es ist nicht so einfach wie mit dem von der Messe verwalteten Workflow,
Sie auch und das ist eine wichtige Einschränkung, Sie werden nicht in der Lage sein, iOS-Apps unter Windows
zu erstellen.
Dies ist im verwalteten Workflow möglich, da der Build dort nicht auf Ihrem Computer ausgeführt wird,
sondern in der Cloud, mit dem nackten Workflow und mit der React Native CLI, Sie für
die Erstellung der Apps verantwortlich sind und dies daher lokal tun müssen Auf Ihrem Computer
und daher aufgrund der Einschränkungen von Apple können Sie keine iOS-App unter Windows oder Linux
erstellen. Beachten Sie dies auch dort.
Sie machen dort also alles selbst, also
müssen diese Tools installiert sein, und obwohl Sie sie nicht zum Schreiben von Code verwenden, müssen Sie ein wenig darin herumfummeln
und sie verwenden, um dann Ihre App zu erstellen und bereitzustellen es am Ende. Dies sind die
Alternativen. Jetzt für die Bereitstellung
habe ich ein separates Modul, in dem ich mir anschaue, wie das mit dem verwalteten Workflow und auch ohne
den verwalteten Workflow funktioniert. Darauf werde
ich mich in diesem Modul nicht konzentrieren, sondern in diesem Modul,
das ich möchte um Ihnen zu zeigen, wie Sie eine App mit der React Native CLI erstellen, wie Sie
sie auch mit expo im nackten Workflow erstellen und wie Sie vom verwalteten Workflow in den nackten Workflow
aussteigen können.
Wir werden uns auch ansehen, wie Sie diesen beiden Alternativen einige native Gerätefunktionen hinzufügen können, da dies
der Teil ist, in dem sie sich hauptsächlich vom verwalteten Workflow unterscheiden.
Die Art und Weise, wie Sie Ihre Komponenten usw. schreiben und welche Komponenten Sie von React Native verwenden, unterscheidet
sich überhaupt nicht, da darin nichts Spezielles über expo war. Mit anderen Worten, wenn wir uns
das Projekt ansehen, an dem wir zu Beginn des Kurses
gearbeitet haben, dieses native Modulprojekt. Wenn Sie den verwalteten Workflow nicht verwenden, verlieren Sie im
Wesentlichen alle expo-bezogenen Importe, alles, was Sie tun Ich importiere von der
Messe, das ist im Grunde etwas, was jetzt schwieriger ist oder was Sie jetzt anders machen müssen.
Wenn Sie expo nicht wie in dieser Datei verwenden, muss sich eine solche Datei überhaupt nicht ändern.
Nur Dateien, in denen Sie etwas von expo verwenden, müssen angepasst oder anders implementiert werden, wenn Sie den
verwalteten Workflow nicht verwenden oder verwenden Genauer gesagt, Sie können bestimmte Pakete möglicherweise nicht mehr verwenden oder Sie können
sie weiterhin verwenden, und Sie müssen wahrscheinlich nicht einmal Ihren Code berühren, aber um sie
zu verwenden, müssen Sie mehr manuelle Einrichtungsarbeiten durchführen als nötig Machen Sie mit Expo und dem
verwalteten Workflow.