Beste Tools und Praktiken zum Debuggen von React Native Apps!

Veröffentlicht: 2022-03-30

Debugging ist eine der entscheidenden Aktivitäten während der Softwareentwicklung. Es bezieht sich auf den Prozess, einen Fehler in einer Softwareanwendung zu identifizieren, der Leistungsprobleme verursacht, das Problem dann zu analysieren und schließlich zu beheben. Mit Debugging können Sie Ihren Code validieren und Probleme beheben, bevor Sie eine Softwareanwendung in die Produktionsphase bringen. Debugging-Probleme treten jedoch wahrscheinlich in verschiedenen Phasen auf – Entwicklung, Tests und sogar Produktion/Post-Deployment. Und die Implementierung der richtigen Debugging-Tools und -Methoden beschleunigt die Entwicklung und verbessert die Effizienz des Endprodukts.

Kommen zu React Natives Debugging; Das Framework besteht aus verschiedenen Umgebungen, von denen die bekanntesten Android und iOS sind. Infolgedessen wird es aufgrund der mehreren beteiligten Plattformen schwierig, Apps zu debuggen. Darüber hinaus bietet React Native eine große Auswahl an Tools zum Debuggen, was für viele, insbesondere Neulinge, verwirrend erscheint. Dieser Beitrag führt Sie durch einige effektive Praktiken und nützliche React Native- und React-Debugger-Tools, die Ihnen helfen, Probleme zu identifizieren und wie ein Experte zu beheben.

Reagieren Sie auf native Debugging-Methoden und Best Practices

Identifizieren und Beheben von Konsolenfehlern, Warnungen und Protokollen

Konsolenfehler und -warnungen sind in Form von Bildschirmbenachrichtigungen mit einem roten oder gelben Abzeichen sichtbar.

Fehler

Fehler werden in einer RedBox mit dem Befehl console.error() angezeigt. Diese RedBox enthält eine Beschreibung des Fehlers sowie einen Vorschlag zur Behebung des Fehlers. Schauen Sie sich dieses Beispiel an. Wenn Sie eine Stileigenschaft schreiben, die das React Native-Framework nicht unterstützt, oder wenn Sie eine Eigenschaft schreiben, die für ein bestimmtes Element verwendet werden soll (z. B. muss ein backroundImage für das Element View festgelegt werden), zeigt die RedBox einen Fehler an zusammen mit der Liste der unterstützten Stileigenschaften, die auf die Ansicht angewendet werden können.

Warnungen

Warnungen werden in einer YellowBox mit dem Befehl console.warn() angezeigt. Solche Warnungen enthalten Informationen zu leistungsbezogenen Problemen und veraltetem Code. Die meisten dieser Warnungen weisen auf eine schlechte Vorgehensweise in Ihrem Code hin. Beispiele für Warnungen umfassen eine Benachrichtigung über das Vorhandensein eines eventListeners, der nicht entfernt wird, das Vorhandensein veralteter Funktionen und Abhängigkeiten usw.

Protokolle

Verwenden Sie zum Ausgeben von Protokollen entweder den Befehl „react-native log-android“ oder die Chrome-Konsole mit dem Befehl „console.log(string str)“.

React Native-Entwickler können die Benachrichtigungen zu Fehlern und Warnungen mit dem Befehl LogBox.ignoreAllLogs() bei Bedarf ausblenden, beispielsweise während Produktdemos. Sie können die Benachrichtigungen auch pro Protokoll mit dem Befehl LogBox.ignoreLogs() ausblenden. Diese Methode funktioniert in Szenarien, in denen eine laute Warnung nicht wie in einer Drittanbieterabhängigkeit aufgelöst werden kann. Aber wenn Sie Protokolle ignorieren, stellen Sie sicher, dass Sie später eine Aufgabe zum Beheben dieser ignorierten Protokolle erstellen.

Debuggen mit dem integrierten Debug-Modus von React Native

Sehen Sie sich an, wie Sie den integrierten Debug-Modus nutzen können, der vom React Native-Ökosystem mit Browsern wie Safari oder Chrome angeboten wird.

Debuggen mit Chrome

Installieren Sie diese React-Devtools zur Unterstützung von React Native: Yarn und NPM. Verwenden Sie dann den Entwicklungsmodus, um das In-App-Entwicklermenü zu öffnen; Hier starten Sie den Debugging-Vorgang, indem Sie die Debug-Option aktivieren.

Wählen Sie im Entwicklermenü die Option JS remote debuggen. Diese Aktion öffnet einen Kanal zu einem JS-Debugger. Ein neuer Tab wird geöffnet; Wählen Sie hier im Chrome-Menü Tools – Developer Tools; zum Öffnen der Devtools.

Die anderen wichtigsten Optionen, die Sie im In-App-Entwicklermenü zum Debuggen von Apps verwenden können, sind:

Enable Live Reload: zum automatischen Neuladen der App, Enable Hot Reloading: zum Identifizieren der Änderungen, die zu einer geänderten Datei führen, und Start Systrace startet das Marker-basierte Profiling-Tool von Android. Die Option Toggle Inspector hilft beim Umschalten einer Inspector-Oberfläche. Auf diese Weise können Entwickler auf dem Bildschirm vorhandene UI-Elemente inspizieren und ihre Eigenschaften untersuchen. Dann wird eine Schnittstelle präsentiert; diese Oberfläche enthält weitere Registerkarten wie Netzwerk zur Anzeige der HTTP-Aufrufe sowie eine leistungsbezogene Registerkarte. Die Option Show Perf Monitor verfolgt die Leistung Ihrer App.

Debuggen mit Safari

Die iOS-Version Ihrer App kann mit Safari debuggt werden, und hier müssen Sie „Debug JS Remotely“ nicht aktivieren. Öffnen Sie einfach die Einstellungen und wählen Sie dann die folgenden Optionen aus:

  • Einstellungen
  • Fortschrittlich
  • Menü „Entwickeln“ in der Menüleiste anzeigen

Wählen Sie als Nächstes den JSContext Ihrer Anwendung aus:

Entwickeln – Simulator – JSContext

Jetzt öffnet sich der Web Inspector von Safari und Sie können einen Debugger und eine Konsole anzeigen. Und jedes Mal, wenn Sie die App neu laden, entweder manuell oder mithilfe der schnellen Aktualisierung (Live-Neuladen), wird ein neuer JSContext erstellt. Denken Sie daran, die Option Automatically Show Web Inspectors for JSContexts auszuwählen; Andernfalls wird der neueste JSContext manuell ausgewählt.

Prominente React/React Native Debugger-Tools

DevTools reagieren

Dieser Satz von React-Tools wird zum Debuggen der Komponentenhierarchie von React eingesetzt und eignet sich gut für Front-End-Operationen. Mit diesem Toolset können Sie sehen, was sich tief in Ihrem Komponentenbaum befindet – wählen Sie den Optionsstatus der Komponente aus und bearbeiten Sie die aktuellen Requisiten.

React Developer Tools sind die Erweiterung für die Browser Firefox und Chrome. Um jedoch in React Native erstellte Apps zu debuggen, müssen Sie eine autonome Version von React DevTools verwenden und diesen Befehl auf Ihrem Terminal ausführen – npm install –g respond-devtools. Starten Sie dann die App, indem Sie den Befehl „react-devtools“ ausführen. Wählen Sie die Option Show Inspector aus dem In-App-Entwicklermenü, um die UI-Elemente der App zu untersuchen.

Wenn Redux verwendet wird, müssen Sie React DevTools zusammen mit ReduxDev Tools verwenden, um den Zustand Ihrer Komponente vollständig zu verstehen. Dazu müssen Redux DevTools separat installiert werden und auch hier erweist sich das Tool React Native Debugger als recht nützlich.

Reagieren Sie auf den nativen Debugger

Der React Native Debugger ist immens vorteilhaft, wenn Redux während der React Native App-Entwicklung verwendet wird. Dies ist ein eigenständiges Tool, das unter Linux, Windows und macOS funktioniert. Dieses Tool wird zum Protokollieren oder Löschen von Async Storage-Inhalten, zum Erkennen und Diagnostizieren von Leistungsproblemen und zum Untersuchen von Netzwerkanforderungen verwendet.

Das Beste daran ist, dass es sowohl React DevTools als auch Redux DevTools in eine einzige App integriert, sodass keine Notwendigkeit besteht, zwei separate Anwendungen zu verwenden, um Apps für die React- und Redux-Umgebungen zu debuggen. Das Tool bietet Schnittstellen, auf denen Sie React-Elemente untersuchen und debuggen sowie Redux-Protokolle und die zugehörigen Aktionen anzeigen können.

Der Debugger von React Native stellt Chrome DevTools in den Schatten, indem er den Toggle-Inspector zum Untersuchen von React Native-Elementen verwendet. Außerdem bietet der React Native Debugger die Funktionalität zum Bearbeiten von Stilen; Diese Funktion ist in Chrome DevTools nicht vorhanden.

Flipper

Flipper ist ein plattformübergreifendes Tool zum Debuggen von JavaScript-Apps sowie der Geräte- und JS-Protokolle. Es startet Simulatoren zum Verwalten von Geräten, kann sich mit mehreren Geräten gleichzeitig verbinden, um Apps auf mehreren Plattformen zu debuggen, und umfasst einen einstufigen Debugging-Prozess, einschließlich Watchpoints und Breakpoints.

Flipper bearbeitet die Komponenten spontan, spiegelt diese Änderungen dann in Echtzeit in der Anwendung wider und lässt sich in den Layout-Inspektor der App integrieren. Seine Fähigkeit zur integrierten Startverwaltung ermöglicht es Entwicklern, Konfigurationen zu definieren und sie für Komponententests einzusetzen, ohne Konfigurationen an mehreren Stellen replizieren zu müssen. Darüber hinaus verfügt es über eine Plugin-basierte Architektur und unzählige praktische Funktionen; Weitere Funktionen werden in den kommenden Jahren erwartet.

Mit Flipper können Sie Ihre Apps über eine einfache Desktop-Oberfläche anzeigen, prüfen und steuern. Flipper kann unverändert verwendet oder durch die Verwendung der Plugin-API erweitert werden.

Überprüfen Sie diesen Blog, um weitere Einblicke in andere wichtige Tools zum Debuggen von React Native-Apps zu erhalten!

Endeffekt

Mit den oben genannten Tools und Methoden können Sie Apps effizienter und fehlerfreier debuggen, genau wie ein Profi. Diese Tools und Best Practices wirken Wunder, um die Entwicklung zu beschleunigen, die Produktivität der Entwickler zu steigern und die Leistung des Endprodukts zu verbessern.

Möchten Sie mit erfahrenen App-Entwicklern zusammenarbeiten, die die Funktionsweise Ihrer React Native-Apps verstehen, Probleme sofort erkennen und Fehler sofort beheben? Wenn ja, dann ist Biz4Solutions, ein renommiertes Outsourcing-Softwareentwicklungsunternehmen, einen Versuch wert! Wir sind darauf spezialisiert, kompetente Entwicklungsdienstleistungen für React Native anzubieten und kümmern uns um den gesamten Produktlebenszyklus von der App-Idee bis zur Wartung nach der Bereitstellung.

Weitere Informationen zu unseren anderen Kerntechnologien finden Sie unter den folgenden Links:

Schnelle App-Entwicklung
.Net-App-Entwicklung
Java-App-Entwicklung