Phonegap 3.0 IOS plugins non trouvé
Im obtenir cette erreur dans XCode:
2013-08-23 14:36:18.284 Tell The DJ[14955:c07] ERROR: Plugin 'Device' not found, or is not a CDVPlugin. Check your plugin mapping in config.xml.
2013-08-23 14:36:18.284 Tell The DJ[14955:c07] -[CDVCommandQueue executePending] [Line 116] FAILED pluginJSON = [
"Device1096677259",
"Device",
"getDeviceInfo",
[
]
]
2013-08-23 14:36:18.285 Tell The DJ[14955:c07] CDVPlugin class CDVConnection (pluginName: NetworkStatus) does not exist.
2013-08-23 14:36:18.285 Tell The DJ[14955:c07] ERROR: Plugin 'NetworkStatus' not found, or is not a CDVPlugin. Check your plugin mapping in config.xml.
2013-08-23 14:36:18.285 Tell The DJ[14955:c07] -[CDVCommandQueue executePending] [Line 116] FAILED pluginJSON = [
"NetworkStatus1096677260",
"NetworkStatus",
"getConnectionInfo",
[
]
]
J'ai installé Phonegap 3.0 avec l'Interface de Ligne de Commande et collez mon www fichiers dans les dossiers du projet. L'application fonctionne très bien mais quand je viens de fonctions natives comme ID de l'appareil, la caméra, les connexions réseau, il échoue et me met cette erreur. Mais je pense que mon config.xml est droit?
<?xml version='1.0' encoding='utf-8'?>
<widget id="io.cordova.helloCordova" version="2.0.0" xmlns="http://www.w3.org/ns/widgets">
<name>Hello Cordova</name>
<description>
A sample Apache Cordova application that responds to the deviceready event.
</description>
<author email="[email protected]" href="http://cordova.io">
Apache Cordova Team
</author>
<content src="index.html" />
<feature name="LocalStorage">
<param name="ios-package" value="CDVLocalStorage" />
</feature>
<access origin="http://dev.tellthedj.de" />
<preference name="KeyboardDisplayRequiresUserAction" value="true" />
<preference name="SuppressesIncrementalRendering" value="false" />
<preference name="UIWebViewBounce" value="true" />
<preference name="TopActivityIndicator" value="gray" />
<preference name="EnableLocation" value="false" />
<preference name="EnableViewportScale" value="false" />
<preference name="AutoHideSplashScreen" value="true" />
<preference name="ShowSplashScreenSpinner" value="true" />
<preference name="MediaPlaybackRequiresUserAction" value="false" />
<preference name="AllowInlineMediaPlayback" value="false" />
<preference name="OpenAllWhitelistURLsInWebView" value="false" />
<preference name="BackupWebStorage" value="cloud" />
<preference name="orientation" value="portrait" />
<preference name="webviewbounce" value="false" />
<preference name="prerendered-icon" value="true" />
<preference name="phonegap-version" value="3.0.0" />
<preference name="fullscreen" value="false" />
<preference name="stay-in-webview" value="false" />
<preference name="android-minSdkVersion" value="7" />
<preference name="android-installLocation" value="internalOnly" />
<preference name="target-device" value="universal" />
<preference name="autohide-splashscreen" value="true" />
<preference name="load-url-timeout" value="60000" />
<preference name="show-splashscreen-spinner" value="true" />
<preference name="show-splash-screen-spinner" value="true" />
<preference name="allow-inline-media-playback" value="false" />
<preference name="launch-mode" value="standard" />
<feature name="Media">
<param name="ios-package" value="CDVSound" />
</feature>
<feature name="Camera">
<param name="ios-package" value="CDVCamera" />
</feature>
<feature name="Console">
<param name="ios-package" value="CDVLogger" />
</feature>
<feature name="Device">
<param name="ios-package" value="CDVDevice" />
</feature>
<feature name="Notification">
<param name="ios-package" value="CDVNotification" />
</feature>
<feature name="File">
<param name="ios-package" value="CDVFile" />
</feature>
<feature name="FileTransfer">
<param name="ios-package" value="CDVFileTransfer" />
</feature>
<feature name="Geolocation">
<param name="ios-package" value="CDVLocation" />
</feature>
<feature name="Capture">
<param name="ios-package" value="CDVCapture" />
</feature>
<feature name="NetworkStatus">
<param name="ios-package" value="CDVConnection" />
</feature>
<feature name="SplashScreen">
<param name="ios-package" value="CDVSplashScreen" />
</feature>
<plugins>
<plugin name="Device" value="CDVDevice" />
</plugins>
</widget>
- Avez-vous déjà réussi à résoudre ce problème? Je suis en train de vivre la même chose et réinstaller comme indiqué ci-dessous n'a pas aidé. Je me demande ce qui doit être fait ici pour qu'il fonctionne.
- J'ai encore de ne pas avoir compris cela. Mais Im en utilisant iOS7, et toujours en attente de la sortie officielle de phongap pour iOS7. Peut-être qu'il fonctionne avec le nouveau phonegap libération. Quel genre de iOS utilisez-vous?
- regarde ma réponse! 😉
- 6.1.3 ici. Pendant ce temps, j'ai résolu le problème en démarrant le projet à partir de zéro et d'installer tous les plugins cordova avec "phonegap local plugin ajouter" avant de construire pour iOS.
- Quelqu'un aurait-il une autre solution? J'ai réinstaller le plugin et aussi j'ai installé phonegap et nodejs nouveau. J'ai également supprimé les plugins et les installer de nouveau. Je ne veux pas faire un freshproject de nouveau.
- essayez de copier votre code html, img, fichiers js et css sur le bureau et ensuite installer phonegap pour une toute nouvelle direction. puis coller les fichiers
- Cela peut aider: stackoverflow.com/questions/18301518/...
Vous devez vous connecter pour publier un commentaire.
J'ai été en utilisant PhoneGap 3.0/3.1, et a été de retirer les locaux dossier de création avant de la reconstruction (depuis que j'ai eu pour copier des icônes et d'autres choses dans le secondaire un script de build). C'était un de mes plugins et produit le même message d'erreur.
En fin de compte j'ai trouvé, j'ai dû supprimer
./plugins/ios.json
lors de la suppression de./platforms/ios
à assurez-vous que les plugins ont été reconstruits.$ cordova ios prepare/build
La suppression de la plates-formes/ios dossier n'est pas une solution pour moi que toutes les personnalisations manuelles pour xcode projet sera perdu.
Mais il y a un moyen simple de contourner:
Cette solution est venue d'un autre débordement de pile réponse, ici: https://stackoverflow.com/a/21148428/80254
Une autre alternative:
Dans xcode assurez-vous que les fichiers source du plugin a la "cible d'adhésion' ensemble de paramètres: Dans le Fichier de l'Explorateur d'aller Plugins > CDVDevice.m et vérifier si il y a une coche à côté de votre nom de l'application à la cible "d'adhésion" sur le côté droit de la fenêtre de xcode. En fait, cela fait la même chose que l'autre solution, mais est un peu plus pratique.
À partir d'ici: https://stackoverflow.com/a/20576744/80254
.m
fichier.J'ai rencontré le même problème. J'ai suivi la solution donnée par Jeffrey Van Alstine. C'est mon script pour créer et tester une application iOS développée à l'aide de Phonegap 3.0/3.1.
De l'enregistrer comme un fichier bash, par exemple,
ios.sh
dans votre répertoire de travail (répertoire qui contientwww
dossier) et exécuter./ios.sh
Cela semble être un problème connu pour les 3.* versions
https://issues.apache.org/jira/browse/CB-4971
vous pouvez résoudre ce problème par la mise à niveau de Phonegap à la version 3.4.
Essayez de réinstaller le plugin:
phonegap local plugin ajouter https://git-wip-us.apache.org/repos/asf/cordova-plugin-device.git
- Je utiliser Cordova 3.7 et j'ai résolu le problème avec Kobkrit Viriyayudhakorn 's solution, MAIS bien sûr, vous devez utiliser
au lieu de
je pense que vous devez utiliser la bonne config.xml
pour moi, c'est Xcode projet dossier cible config.xml et pas de plate-forme de dossier www
J'ai trouvé une solution qui a fonctionné pour moi. J'ai été en utilisant la Boussole plugin et après l'ajout du plugin, j'ai remarqué que l'config.xml (plugin docs) dit qu'il devrait avoir
alors que l'ios.json dans le plugin a ajouté
L'un d'eux se réfère à CDVCompass tandis que l'autre CDVLocation ... changer le xml pour CDVCompass a fait le tour et maintenant, l'application fonctionne.
Je suis tellement fatigué de supprimer et de re-ajout de plates-formes pour le plugin questions! Il semble que c'est toujours un problème, même maintenant (2014/10) où, si vous ajoutez des plugins pour une application après l'ajout de plates-formes le plugin parfois ne pas se propage jusqu'à la plate-forme correspondante dossiers/etc. Remarque ce qui semble affectent principalement les iOS - pas Android.
Je pense que ma solution est juste une mise à jour de la méthode de faire la même chose bjunix posté plus tôt - mais dans XCode 6 à résoudre ce genre de chose sans enlever/rajouter ma plate-forme, j':
Après avoir fait le au-dessus de mon projet enfin construit.
Lorsque cela se produit, il semble que le xcode mnp package chargé d'apporter des modifications à la pbxproj fichier laisse parfois des références à des fichiers de plugin qui ont été enlevés. Je n'ai pas retrouvé dans quelles circonstances exactes de ce produit, mais cela semble se produire plus souvent sous forme de plugin de supprimer/ajouter des opérations (mise à jour d'un plugin par exemple).
Je soupçonne que lorsqu'un plugin est supprimé et le xcode mnp package échoue à son travail, il est seulement capable de supprimer le fichier du plugin de références de la PBXBuildFile l'article mais pas les autres sections, laissant le pbxproj dans un état rompu.
Lorsque le xcode mnp paquet tente d'ajouter le fichier du plugin références de nouveau, il vérifie d'abord si les références sont déjà en pbxproj. Il regarde dans le PBXFileReference section, et depuis qu'il trouve des références à l'plugin là, abandonne la poursuite du traitement, nous mène nulle part.
Ma solution, mais un hack quand il descend à lui, est de forcer le xcode mnp package pour vérifier la PBXBuildFile section à la place. Cette section sera absent de la des références et à son tour, le plugin sera ré-installé correctement.
Changement
pbxFileReferenceSection
àpbxBuildFileSection
sur cette ligne: https://github.com/alunny/node-xcode/blob/master/lib/pbxProject.js#L620Ré-installer vos plugins, et vous devriez être bon d'aller.
J'mon cas, Après avoir installer le Plugin Paypal, je suis confronté à problème.
J'ai résolu ses par ajouter "PayPalMobileCordovaPlugin.m" dans la Compilation de la Source.
Vous avez juste besoin d'ajouter .m fichier à Compiler la source d'ajouter que cela fonctionne pour moi.
Vérifier Capture D'Écran.
Espère que son travail pour vous
Cela peut aussi arriver si vous avez un plugin qui est référencé, mais il n'est pas installé. Si vous avez essayé les solutions ci-dessus et ne peut pas trouver de référence du plugin .m de fichier c'est peut être que le plugin n'est pas vraiment installé.
Je voudrais vérifier votre répertoire de plugins pour être sûr qu'il y a des fichiers qu'il contient. Si pas, réinstaller le plugin. J'ai couru dans le présent quand j'ai eu une faute de frappe dans le repo git lors de la restauration de plugins à partir de l'config.xml.
J'ai résolu ce problème en changeant le "plugin" l'entrée d'une "fonction" entrée dans le config.xml. (à l'aide de PhoneGap 3.1/iOS). C'est ce que le correctif ressemblait:
J'ai résolu ce problème avec une réinstallation complète de Node.js et Phonegap par le biais de la CLI Outil