Dans iOS, je mets à jour 7.2. Je peux créer mon projet existant sur mon périphérique sans problème. Lorsque le moment est venu d'archiver le projet afin de le soumettre à l'App Store, toutefois, une erreur de construction s'est produite: fichier Cordova/CDVViewController.h introuvable. J'ai parcouru à peu près tous les correctifs/solutions de contournement pour lesquels je n'ai pas trouvé Stack Overflow et Google, et aucun d'entre eux n'a fonctionné pour moi. Si je retourne à Xcode 6.4, je ne peux construire et archiver aucun problème, mais je ne peux plus le faire sur mon appareil maintenant qu'il exécute iOS 9.1.
J'imagine que c'est un problème de configuration quelque part avec la nouvelle configuration de la version Xcode. Quelqu'un d'autre a-t-il rencontré cela? Encore une fois, les suspects habituels (Préférences> Localisation> Données dérivées> Avancé> Unique), les chemins de recherche d'en-tête, etc. semblent tous aller.
Merci, Adisheshu
Ce problème semble apparaître dans Xcode 7.2 en raison du chemin de recherche/include.
Résoudre ceci de la manière suivante:
Sélectionnez votre [projectName]
dans XcodeCIBLES.
Allez dans Paramètres de construction tab.
Assurez-vous que le filtre est défini sur "Tous" et non sur "De base".
Recherchez "Chemins de recherche d'en-tête"
Double-cliquez et ajoutez ce chemin à "Debug" et à "Release": $(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include
Maintenant nettoyer le projet et redémarrer Xcode.
Capable de faire le Build et Archive .
C'est tout.
Après avoir essayé toutes les solutions sans succès, j'ai exécuté:
cordova platform update ios
Cela a résolu le problème pour moi . (XCODE 7.3.1, Cordova 6.3.0)
Si vous ajoutez cette ligne:
$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include
to en-têtes-recherche-chemin (comme décrit dans la réponse 'im3r3k') n'a pas résolu ce problème, définissez également ceci:
Build Settings -> Architectures -> Build Active Architecture Only -> YES
Vous devez mettre à jour la version iOS de Cordova de votre projet vers 3.9.2 (dernière version de 3 en date du 03/11/16). J'ai eu cette même erreur lors de l'utilisation de 3.8.0 et cela a été corrigé dans 3.9.
Vous pouvez également effectuer une mise à niveau vers Cordova iOS v4.1.0 (Bounding Edge du 3/11/16), mais sachez que vous perdez le support pour iOS 6 et 7 et Cordova-plugin-screen-orientation isn ' pas encore mis à jour pour utiliser 4 vous devez donc verrouiller votre application en portrait ou en paysage.
MODIFIER:
Sans mise à niveau, vous pouvez résoudre ce problème manuellement dans XCode. aller à
Paramètres de construction -> Chemins de recherche d'en-tête: Changement:
$(OBJROOT)/UninstalledProducts/include
à:
$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include
Cela a résolu le problème pour moi:
Pour moi, la $(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include
était déjà dans les chemins de recherche en-tête (en utilisant XCode 8 dans El Capitan). J'ai ensuite ajouté à User Header Search Paths le chemin spécifique du dossier CordovaLib
, avec l'option recursive
activée (pour les utilisateurs Xperformants non expérimentés comme moi, sélectionnez le projet dans l'arborescence (1er noeud) pour afficher "Paramètres de construction" !!)
Mais méfiez-vous des espaces! Après beaucoup d'omissions, il était plus prudent de simplement faire glisser le dossier depuis une fenêtre du Finder, et il se remplissait comme suit: $(SRCROOT)/..
(cont.), Ce qui n'était pas prévu mais fonctionnait.
Également dans XCode/Preferences/Locations/Custom Paths
, j'ai ajouté un nom CORDOVALIB avec le même dossier qu'auparavant, de la même manière (cette fois, le chemin complet a été utilisé, sans la fonction $(SRCROOT)
).
Il m'a fallu plusieurs heures pour tout comprendre ...
J'ai également eu ce problème mais pour moi, ajouter un chemin à la recherche d'en-tête ne suffisait pas. J'ai ajouté CDVViewController.h à la section "public" du sous-projet CordovaLib.xcodeproj -> CordovaLib (cible) -> Phases de construction -> En-têtes -> Public
Les solutions ci-dessus ne fonctionnaient pas pour moi.
In my case, when I build my iOS platform, CordovaLib folder was not included.
1. Delete existing CordovaLib.xcodeproj
2. Add existing files. Add CordovaLib.xcodeproj from CordovaLib folder
3. Add dependencies and select CordovaLib
4. Add link Binaries with library and select libCordova.a
C'est tout!
J'utilisais xcode 7.3 et j'avais le même problème. Dans mon cas, l'erreur était due à une erreur qui se produisait lors de l'exécution de "cordova platform add ios". Une erreur se produisait car aucune image ne pouvait être trouvée dans le dossier res et évitait ainsi que Cordova Platform ajoute la fin correcte.
Le fichier CDV.h est présent dans CordovaLib/CordovaLib.xcodeproj/public. Vous pouvez donner ce chemin et travaillé pour moi.
Je ne sais pas comment donner un chemin relatif. J'ai donc glissé/déposé le fichier et l'ai mis dans ""
avec #import
comme:
#import "dragged file full path"
Définissez également ENABLE BITCODE = NO dans les paramètres de construction.
Désinstallez et réinstallez la plateforme Cordova
cordova platform rm ios
cordova platform add ios
J'ai fait face à ce problème lorsque j'ai supprimé et ré-ajouté le projet. Certains fichiers de ressources, tels que les icônes ou les écrans de démarrage, étaient introuvables et le projet ne créait pas du tout.
Pour moi, la suite a fonctionné
Xcode 8.1 ios 10.x
(cible -> Paramètres de construction -> Chemins de recherche en-tête)
"$ {PODS_ROOT}/Cordova/CordovaLib/Classes/Public"
comme
Le dossier "$ {PODS_ROOT}/Headers/Public" était vide.
La capture d'écran suivante montre ce que vous devriez voir dans Xcode 7.2 après les étapes 1 à 6 (la ligne surlignée en bleu indique la configuration ajoutée):
J'ai eu le même problème, donc je viens de retirer <icon src="icon.png" />
du fichier de configuration. puis j'ai retiré et ajouté la plate-forme IOS en utilisant cordova platform remove ios
puis cordova platform add ios