Umgebung
Mac OS X Version 10.11.3 (15D21)
Xcode Version 7.2 (7C68)
Simulator Version 9.2 (SimulatorApp-643)
react-native-cli 0.1.10
node v5.5.0
Was ich vor dem Ausführen der App getan habe
npm install -g react-native-cli
react-native init DemoProjectDELETEME
cd ./DemoProjectDELETEME
react-native run-ios
Ich bin neu bei React Native. Wenn ich versuche, die Standard-App auf dem iOS-Simulator auszuführen, wurden folgende Fehler angezeigt. Ich habe ein ähnliches Problem gefunden, aber es löst mein Problem nicht.
Xcode6 kann keine App im Simulator ausführen (Domain = NSPOSIXErrorDomain, Code = 3)
Nach dem Neustart der Maschine und des Simulators bleiben die Probleme weiterhin bestehen.
** BUILD FAILED **
The following build commands failed:
PhaseScriptExecution Run\ Script /Users/x/Desktop/DemoProjectDELETEME/ios/build/Build/Intermediates/React.build/Debug-iphonesimulator/React.build/Script-006B79A01A781F38006873D1.sh
(1 failure)
Installing build/Build/Products/Debug-iphonesimulator/DemoProjectDELETEME.app
An error was encountered processing the command (domain=NSPOSIXErrorDomain, code=2):
Failed to install the requested application
An application bundle was not found at the provided path.
Provide a valid path to the desired application bundle.
Print: Entry, ":CFBundleIdentifier", Does Not Exist
/Users/x/Desktop/DemoProjectDELETEME/node_modules/promise/lib/done.js:10
throw err;
^
Error: Command failed: /usr/libexec/PlistBuddy -c Print:CFBundleIdentifier build/Build/Products/Debug-iphonesimulator/DemoProjectDELETEME.app/Info.plist
Print: Entry, ":CFBundleIdentifier", Does Not Exist
at checkExecSyncError (child_process.js:464:13)
at Object.execFileSync (child_process.js:484:13)
at _runIOS (runIOS.js:77:34)
at runIOS.js:24:5
at tryCallTwo (/Users/x/Desktop/DemoProjectDELETEME/node_modules/promise/lib/core.js:45:5)
at doResolve (/Users/x/Desktop/DemoProjectDELETEME/node_modules/promise/lib/core.js:200:13)
at new Promise (/Users/x/Desktop/DemoProjectDELETEME/node_modules/promise/lib/core.js:66:3)
at Array.runIOS (runIOS.js:23:10)
at Object.run (/Users/x/Desktop/DemoProjectDELETEME/node_modules/react-native/local-cli/cli.js:86:13)
at Object.<anonymous> (/usr/local/lib/node_modules/react-native-cli/index.js:73:7)
Ich erhalte die Fehlermeldung, wenn ich versuche, die App von Xcode aus zu starten.
Sudo npm start
im Projektstamm löst das Problem, aber react-native run-ios
noch BUILD FAILED.
Vielen Dank, dass Sie sich meine Frage angesehen haben.
Versuchen Sie, react-native upgrade
auszuführen.
Siehe Github-Thread: https://github.com/facebook/react-native/issues/7308#issuecomment-219597774
Für mich war Port 8081 im Einsatz:
lsof -n -i4TCP:8081
Das Problem liegt in der JS-Datei, die Ihre App erstellt und ausführt. Wenn Ihr Projekt, Ihr Schema und Ihr Produktname nicht alle gleich sind, erhalten Sie Fehler, insbesondere bei Simulatoren.
Die gute Nachricht ist, dass ich eine Pull-Anfrage eingereicht habe, die das Problem behebt. Bitte gehen Sie auf die Frage, damit wir uns keine Sorgen darüber machen, dass Dinge brechen, wenn wir sie umbenennen.
Durch Hinzufügen von Sudo
vor allen Befehlen wird das Problem gelöst.
Sudo react-native init ProjectName
Sudo chmod 777 ProjectName
cd ProjectName
Sudo react-native run-ios
Für mich musste ich meine Version von XCode
von Yosemite auf Sierra aktualisieren.
Dies kann über App Store
> Updates
erfolgen.
Ich habe mein Problem behoben, Sie können es versuchen, wenn Sie sich in demselben Zustand befinden.
Ich bin auf den gleichen Fehler gestoßen:
Print: Eintrag ": CFBundleIdentifier" ist nicht vorhanden
Wenn ich ein existierendes reaktives Projekt von lerne, klicke ich .
Ich initialisiere (mit {react-native init yourProjectName}
) ein neues Projekt mit demselben Namen in einem anderen Verzeichnis
kopieren Sie jede nützliche * .ios.js-Datei in das neue Projekt von der Datei, die ich an anderer Stelle kloniere.
Das funktioniert für mich.
Öffnen Sie Ihr Xcode-Projekt
Starte es
Sie sollten 2 Fehler von RCTSRWebSocket.m haben
füge (void) am Anfang beider Zeilen hinzu:
SecRandomCopyBytes(kSecRandomDefault, sizeof(uint32_t), (uint8_t *)mask_key);
werden
(void)SecRandomCopyBytes(kSecRandomDefault, sizeof(uint32_t), (uint8_t *)mask_key);
Speichern Sie Ihr Projekt mit Xcode oder Terminal und führen Sie es erneut aus. Es sollte sicher funktionieren. Ich habe die Lösung bereits getestet, nur diese hat für mich gearbeitet.
Für mich bestand mein Problem darin, dass McAfee auf Port 8081 ausgeführt wird. Daher lasse ich die App nach dieser Antwort an einem anderen Port ausführen https://stackoverflow.com/a/50649969/5323419 Grundsätzlich:
reag-native run-ios --port 1234 reaktiver Start --port 1234
Ich verwende React native 0.55+
Überraschenderweise war dies die Lösung für mich: Öffnen Sie die Datei Views/RTCScrollView.m in Xcode und ändern Sie die Variable _refreshControl in refreshControl . Alle Vorkommen von _refreshControl wurden bereits als Fehler markiert. Der neue Code wird zu:
- (void)setRefreshControl:(RCTRefreshControl *)refreshControl
{
if (refreshControl) {
[refreshControl removeFromSuperview];
}
refreshControl = refreshControl;
[self addSubview:refreshControl];
}
Bearbeiten Sie die Datei ProjectName/node_modules/reag-native/local-cli/runIOS/runIOS.js Zeile Nr. 18: Ersetzen Sie die gesamte Codezeile durch Folgendes:
return `build/Build/Products/${configuration}-${isDevice ? 'iphoneos' : 'iphonesimulator'}/${appName}.app`;
Zeile Nr. 146: unkommentiert '-derivedDataPath', 'build',
danach den Befehl vom Terminal aus ausführen: Sudo Reactative-Run-Ios