résolution des problèmes React Native

Important

Visual Studio App Center doit être mis hors service le 31 mars 2025. Bien que vous puissiez continuer à utiliser Visual Studio App Center jusqu’à ce qu’il soit entièrement mis hors service, il existe plusieurs alternatives recommandées vers lesquelles vous pouvez envisager de migrer.

En savoir plus sur les chronologies et les alternatives de support.

Ma build React Native échoue avec le fichier « FBSDKCoreKit/FBSDKCoreKit.h » introuvable

Cette erreur est généralement due au fait que le KIT de développement logiciel (SDK) Facebook s’attend à ce qu’il soit installé dans le répertoire de base de l’utilisateur, ce qui peut être problématique pour les builds hébergées. Pour contourner cette exigence, procédez comme suit :

  1. Archivez facebookSDK dans votre dépôt. Il peut aller n’importe où, mais le script ci-dessous suppose qu’il est ajouté à <repo-root>/vendor/FacebookSDK.

  2. Ajoutez un script de préinstallation npm à votre package.json :

"scripts": {
    ...
    "preinstall": "./npmpreinstall.sh"
}
  1. npmpreinstall.sh symlinks ~/Documents/FacebookSDK à votre référentiel avec le code suivant :
#!/bin/sh
if [ ! -L ~/Documents/FacebookSDK ]; then
    echo 'Symlinking ~/Documents/FacebookSDK to Facebook SDK in repo'
    ln -s $(cd ./vendor/FacebookSDK; pwd) ~/Documents/FacebookSDK
fi
  1. Rendre npmpreinstall.sh exécutable :
chmod u+x npmpreinstall.sh

Ma build React Native échoue avec « ERREUR IRRÉCUPÉRABLE : échec de l’allocation CALL_AND_RETRY_LAST - Mémoire javaScript insuffisante »

Le problème peut être résolu en allouant plus de mémoire avec l’indicateur --max-old-space-size .

Sur Android, ajoutez ce qui suit au fichier build.gradle du projet :

project.ext.react = [
    nodeExecutableAndArgs: ["node", "--max_old_space_size=8192"]
]

Sur iOS, dans Xcode, sélectionnez votre cible et accédez à l’onglet Phases de génération. Dans la section Regrouper le code et les images React Native, ajoutez l’indicateur au script shell :

export NODE_BINARY="'node --max_old_space_size=8192'
../node_modules/react-native/packager/react-native-xcode.sh"