ios - started - react native tutorial




Fichier «RCTBundleURLProvider.h» introuvable-AppDelegate.m (16)

J'essaie d'exécuter mon application React Native en XCode et je continue à avoir cette erreur. Je n'arrive pas à comprendre comment résoudre le problème. Aucune suggestion?

Capture d'écran d'une erreur dans le XCode:


Assurez-vous que le chemin d'accès à votre projet ne contient aucun espace. Le fait de renommer des dossiers et de supprimer des espaces résout le problème pour moi.


Aucune des autres suggestions ne corrigeait mon erreur, mais celle-ci l'a fait.

1 - Créer un fichier podfile

Créez un fichier nommé ios/Podfile dans votre application ios/Podfile -native avec le contenu suivant:

# You Podfile should look similar to this file. React Native currently does not support use_frameworks!
source 'https://github.com/CocoaPods/Specs.git'

platform :ios, '8.0'

target '<YOUR_APP_NAME>' do
  # Fixes required for pod specs to work with rn 0.42
  react_native_path = "../node_modules/react-native"
  pod "Yoga", :path => "#{react_native_path}/ReactCommon/yoga"
  pod "React", :path => react_native_path, :subspecs => [
    'Core',
    'RCTActionSheet',
    'RCTAnimation',
    'RCTGeolocation',
    'RCTImage',
    'RCTLinkingIOS',
    'RCTNetwork',
    'RCTSettings',
    'RCTText',
    'RCTVibration',
    'RCTWebSocket'
  ]

  pod 'GoogleMaps'  # <~~ remove this line if you do not want to support GoogleMaps on iOS

# when not using frameworks  we can do this instead of including the source files in our project (1/4):
#  pod 'react-native-maps', path: '../../'
#  pod 'react-native-google-maps', path: '../../'  # <~~ if you need GoogleMaps support on iOS
end

2 - Installer Podfile

Exécutez l’ pod install du pod install commande à partir du dossier ios.

3 - Réinitialiser le XCode

Redémarrez XCode et l'erreur devrait avoir disparu.


Essayez ce qui suit:

  1. Nettoyer ( cmd + shift + K ).
  2. Construire le noyau React - sélectionnez React en tant que schéma dans Xcode et construisez-le ( cmd + B ).
  3. Construisez la bibliothèque qui échoue (par exemple, RCTText).
  4. Construisez votre application.

Exécutez npm install dans votre répertoire de projet pour installer react-native résolvant cette erreur.


J'ai eu le même problème et je l'ai résolu en plaçant RNFIRMessaging.h au-dessus de React / RCTBundleURLProvider.h

Donc, je vais ressembler à:

#import "AppDelegate.h"
#import "RNFIRMessaging.h"

#import <React/RCTBundleURLProvider.h>
#import <React/RCTRootView.h>

J'ai fait face au même problème .alors j'ai supprimé le noeud .try pour utiliser ces étapes

  1. Supprimez le dossier node_modules - rm -rf node_modules && npm install
  2. Réinitialiser le cache de l'emballeur - rm -fr $ TMPDIR / react- * ou node_modules / react-native / packager / packager.sh --reset-cache
  3. Effacer montres de gardien - watchman watch-del-all

puis faire construire et voir


J'ai résolu ce problème en procédant comme suit:

  1. Dans xcode, choisissez la racine du projet.
  2. Faites glisser React.xcodeproj des Libraries à la racine du projet.
  3. Cliquez sur le nom du projet (dans mon cas, il s'appelle SaleKit ) dans TARGETS
  4. Choisissez les Build Phases
  5. Dans la liste déroulante des Target Dependencies ajoutez React
  6. Reconstruire ou réexécuter


J'ai rencontré ce problème après ma première tentative d'exécution d'une version React dans XCode, et tout ce que j'avais à faire était de créer et d'exécuter l'erreur pour que l'erreur disparaisse (après la sélection d'une équipe et le provisionnement approprié). Parfois, XCode affiche des erreurs qui ne le sont pas vraiment jusqu'à ce qu'il compile et relie les choses la première fois.


La solution qui fonctionne pour moi est de partager le schéma React .

Si vous n'avez pas de schéma React, créez-en un en Selecting scheme menu -> Manage Scheme -> + -> choose React , puis marquez le schéma React comme partagé.

De plus, si vous utilisez Xcode 10, allez dans File -> Project Settings et sélectionnez Système de construction hérité.


Meilleure solution :

Ouvrez «Paramètres de construction» pour votre projet dans Xcode, recherchez «Chemin de recherche en-tête».

Double-cliquez sur "Chemin de recherche d'en-tête", où les autres propriétés ont un "oui" ou un "non"

Maintenant, ajoutez ce qui suit au "Chemin de recherche en-tête" (sous Paramètres de construction):

$ (SRCROOT) /../ node_modules / react-native / React $ (SRCROOT) /../ noeud_modules / react-native / React / Base N'oubliez pas de les rendre tous deux récursifs.


Pour mon cas, je ne pouvais pas supprimer node_modules et effectuer une réinstallation et je ne pouvais pas non plus faire de mise à niveau react-native-git-updgrade ou react-native-git-updgrade parce que je voulais rester sur RN-0.59 car .60 posait des problèmes pour mes dépendances. .

Quoi qu'il en soit, ma situation était telle qu'il me manquait le fichier 'React / RCTBundleURLProvider.h'. J'ai déjà eu React disponible dans mes schémas. Ce n'était pas dans le répertoire de mes bibliothèques. J'ai vérifié les paramètres de construction de ma cible .

À l'intérieur des dépendances de la cible, j'avais également React.

J'ai supprimé la dépendance cible 'React', puis ré-ajouté. dossiers de construction nettoyés, projet reconstruit. ça a marché.


Pour tous ceux qui utilisent React Native 0.40.0 ou une version ultérieure, les importations d'en-tête ont une modification majeure par rapport à la RN 0.40.0 et génèrent de nombreuses erreurs de fichier .h non trouvées. react-native-git-upgrade corrigé le problème pendant le débogage, mais la construction échoue dans la version / archive.

J'utilise RN 0.42.3 avec des cocoapods et Xcode 8.2.1

Pour résoudre complètement ce problème, accédez à Xcode> Produit> Schéma> Modifier le schéma>

  1. Décocher Parallelize Build
  2. Cliquez sur le bouton + dans Cibles et ajoutez Réagir
  3. Faites glisser le réactif ajouté en haut de la liste dans les cibles.

Maintenant nettoyez le projet et construisez


Supprimez les modules de nœud, puis exécutez npm install (ou mieux encore, fil) et, une fois le téléchargement terminé, exécutez la react-native upgrade ce qui devrait vous permettre de remplacer les anciens fichiers par ceux du modèle. dépendances dans react-native qui devrait résoudre votre problème. Bien sûr, n'oubliez pas de nettoyer votre projet dans Xcode.


Vous exécutez peut-être un fichier .xcodeproj après l'installation de pod.

Fermez-le et ouvrez le fichier .xcworkspace . Cela a fonctionné pour moi.



xcode Product-> Scheme-> Manage Schemes Cliquez sur '+' sur la cible pour sélectionner "React" et définir le fait que React est partagé.







react-native