PhoneGap Notification.Alerte ne fonctionne pas
D'accord, j'ai travaillé sur cette question pendant un certain temps maintenant et ne peut pas comprendre cette chose. Simple PhoneGap application de test, en essayant d'afficher un message d'alerte.
À l'aide de Cordova 2.9.0 pour iOS. J'ai ajouté un simple code de test et l'a testé en chrome pour voir où il se brise, car il n'a pas de travail dans l'émulateur
Quand je l'ai tester sur Chrome (bien sûr le même résultat dans l'émulateur, mais aucun message d'erreur n'est affiché)
- Il exécute la onDeviceReady comme il se doit
- Il définit tb2 zone de texte valeur de 'avant d'alerte"
- Puis elle rompt avec l'erreur: Uncaught TypeError: Impossible d'appeler la méthode "alerte" undefined, sur cette ligne: navigateur.la notification.alert(...
Il doit faire référence à la cordova.js correctement, voici la structure de mon dossier app:
- cordova_plugins.js
- cordova.js
- /spec
- spec.html
- config.xml
- /css
- home.html
- /img
- index.html
- /js
- /res
Voici mon config.xml code:
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.blahblahblah.hello" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>Hello World</name>
<description>
Test blahblahblah Application
</description>
<author email="[email protected]" href="http://blahblahblah.com">
blahblahblah
</author>
<access origin="*" />
<preference name="fullscreen" value="true" />
<preference name="webviewbounce" value="true" />
<plugins>
<plugin name="Notification" value="CDVNotification" />
</plugins>
</widget>
Voici mon index.html code:
<!DOCTYPE html>
<html>
<head>
<title>Notification Example</title>
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">
//Wait for Cordova to load
//
document.addEventListener("deviceready", onDeviceReady, false);
//Cordova is ready
//
function onDeviceReady() {
//Empty
document.getElementById('tb1').value = 'device ready';
}
//alert dialog dismissed
function alertDismissed() {
//do something
}
//Show a custom alert
//
function showAlert() {
document.getElementById('tb2').value = 'before alert';
navigator.notification.alert(
'You are the winner!', //message
alertDismissed, //callback
'Game Over', //title
'Done' //buttonName
);
document.getElementById('tb3').value = 'after alert';
}
</script>
</head>
<body>
<p><a href="#" onclick="showAlert(); return false;">Show Alert</a></p>
<input type="text" id="tb1" value="" />
<input type="text" id="tb2" value="" />
<input type="text" id="tb3" value="" />
</body>
</html>
J'ai cherché de la documentation, et n'ai pas trouvé la moindre idée de pourquoi cela ne fonctionne pas, la plupart des réponses à cette question n'est pas de l'adresse de la version 2.9.0
Merci d'avance.
OriginalL'auteur Darye | 2013-07-17
Vous devez vous connecter pour publier un commentaire.
Je sais que la question est à propos de Phonegap 2.9, mais c'est la première chose que Google crache quand quelqu'un cherche "phonegap d'alerte ne fonctionne pas". Voici donc ce que j'ai fait pour qu'il fonctionne avec Phonegap 3.0:
Selon la manuel, vous devez ajouter le plugin à votre projet. Il vous suffit d'accéder à votre dossier racine du projet et d'écrire cette commande:
$ phonegap local plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-dialogs.git
Après cela, j'ai ajouté ceci à mon code html:
Dans ce cas upvote la réponse! Acclamations 😉
J'ai essayé la réponse ci-dessus,dans mon projecrt répertoire racine je exécutez la commande ci-dessus, mais j'obtiens l'erreur ci-dessous "-bash: phonegap: command not found".Aucune idée de ce que pourrait être te problème.
Soit vous n'avez pas installé phonegap ou il n'est pas dans votre chemin d'accès. Consultez le site web pour les instructions d'installation.
cordova plugins ajouter org.apache.cordoue.les boîtes de dialogue - Cela ajoute aussi des boîtes de dialogue plugin
OriginalL'auteur Andre
Je suis en utilisant Phonegap 2.9.0, et le problème que j'ai eu, c'est que je n'ai pas ajouter le script cordova.js à la page.
Sachez également qu'il existe une cordova.js fichier spécifique à chaque plate-forme, alors méfiez-vous de l'ajout d'cordova.js de android et sur iOS.
Rappelez-vous que tous les appels à l'API phonegap devrait être fait après deviceready a tiré
OriginalL'auteur Carlos487
essayez d'ajouter cette fonctionnalité à votre config.xml fichier..
..J'espère que cela aide...
OriginalL'auteur ala' ale'qoul
Tous vous avez besoin est d'ajouter le plugin:
Ensuite utiliser la fonction d'alerte qui permet d'interrompre le flux de programme:
Fonctionne pour iOS et Android.
OriginalL'auteur pollaris