web-dev-qa-db-fra.com

Cordova Erreur lors de l'utilisation de Cordova-Android 6.2.0 - getFileResources n'est pas une fonction

J'ai un projet ionic/cordova utilisant:

[email protected]
[email protected]
cordova cli 6.4.0
ionic 1.3.3

Lorsque j'essaie d'ajouter la plate-forme Android, j'obtiens la sortie suivante.

================

$ ionic platform add [email protected]

Adding Android project...


Creating Cordova project for the Android platform:

    Path: platforms/Android
    Package: com.ionicframework.name
    Name: name
    Activity: MainActivity
    Android target: Android-25

Subproject Path: CordovaLib

Android project created with [email protected]

Erreur: cordovaProject.projectConfig.getFileResources n'est pas une fonction

26
IonicBurger

Il semble que ce problème soit lié à un bug dans [email protected], comme confirmé ici: https://issues.Apache.org/jira/browse/CB-12633

J'ai maintenant mis à jour mon système à cordova-cli - [email protected] et [email protected], et cela a semblé fonctionner.

Mise à jour de la version 6 de cordova cli avec:

npm install -g cordova@6

Et puis ajoutez la version correcte de cordova-Android

cordova platform add Android@6

Pas directement lié à ce problème, mais une fois que je l'ai fait fonctionner, mon système s'est plaint du fait que le chemin de gradle n'était pas défini lorsque j'ai essayé de créer mon application, et j'ai donc suivi les étapes suivantes: https://gradle.org/ installez # with-homebrew , et maintenant toutes les versions sont réussies.

38
IonicBurger

mettre à jour cordova 

npm install -g cordova

puis essayez d'ajouter une plate-forme ou en cas de problème avec la nouvelle version de cordova, utilisez ci-dessous 

Cordova version 6.4.0 et Android 6.2.1 posent un problème. Alors, s'il vous plaît essayer avec les versions compatibles ci-dessous

la version de cordova doit être 6.4.0

npm install -g [email protected]

Installer Android dans votre projet

cordova platform add [email protected]  

ou

ionic platform add [email protected]
13
Veerendra Borra

Faites ce que @IonicBurger a dit ci-dessus . Assurez-vous également que pour les projets basés sur Cordova, chaque version de Cordova a une dépendance spécifique sur Android SDK et les outils de génération Android installés.

J'utilise actuellement Ionic 3 et j'ai rencontré le même problème. 

  • Assurez-vous que cordova est la dernière: npm i cordova -g fera le travail. Notez quelle version de cordova est installée en vérifiant cordova -v. Après cela, assurez-vous d’avoir installé ionic-native; cela vient généralement avec une installation ionique, mais il ne sera pas dangereux de l’installer de nouveau localement avec npm i ionic-native --save

  • Voir toutes les plates-formes disponibles: liste des plates-formes ionic cordova. Certains plugins comme caméra, média, etc. ont des exigences très spécifiques concernant Cordova (voir ici )

  • Lorsque vous installez un plugin, vous pouvez parfois rencontrer cette erreur: 'Le plugin ne prend pas en charge la version cordova-Android de ce projet. Cordova-Android: 6.1.2, version requise en échec:> = 6.3.0 Sauter 'cordova-plugin-camera' pour Android '. C'est bon. Cela peut être résolu en deux étapes ci-dessus. Rappelez-vous surtout ceci: Assurez-vous que les derniers Outils de construction Android et SDK sont installés . Voir l'image suivante pour plus de détails:  enter image description here

Notez que cette réponse fonctionne mieux avec l'environnement Windows.

4
Abhay Shiro

La mise à jour vers [email protected] n'a pas fonctionné - une erreur s'est produite, car cette version est introuvable

Revenir à [email protected] a fonctionné

cordova platform update [email protected] --save
1
user2729636

Ce problème est survenu lors de la commutation entre deux projets ioniques ..__ Je l'ai corrigé en essayant une autre version de nœud et cela fonctionne.

J'ai utilisé nvm use x.x.x et en rétrogradant vers une version précédente de nodejs, j'ai pu construire mon projet. 

J'espère que ça va aider quelqu'un.

0
g0tcha-

Ce n'est pas la bonne solution pour déclasser la version de Cordova. Si vous souhaitez utiliser la dernière version de Cordova et ionic, utilisez plutôt

ionic cordova platform add Android

Il suffit de faire:

cordova platform add Android

fonctionne comme un charme!

Bon codage!

0