La géolocalisation est un plugin sur Cordova 5.0.0 toujours revenir délai d'attente expiré erreur
J'ai installé Cordova 5.0.0 avec ces plugins:
cordova liste de plugins
cordova-plugin-device 1.0.1-dev "Device"
cordova-plugin-geolocation 1.0.0 "Geolocation"
cordova-plugin-globalization 1.0.0 "Globalization"
cordova-plugin-inappbrowser 1.0.1-dev "InAppBrowser"
cordova-plugin-network-information 1.0.0 "Network Information"
cordova-plugin-whitelist 1.0.1-dev "Whitelist"
L'exécution de ce code sur n'importe quel android virtual device:
onDeviceReady: function () {
var onSuccess = function(position) {
alert('Latitude: ' + position.coords.latitude + '\n' +
'Longitude: ' + position.coords.longitude + '\n' +
'Altitude: ' + position.coords.altitude + '\n' +
'Accuracy: ' + position.coords.accuracy + '\n' +
'Altitude Accuracy: ' + position.coords.altitudeAccuracy + '\n' +
'Heading: ' + position.coords.heading + '\n' +
'Speed: ' + position.coords.speed + '\n' +
'Timestamp: ' + position.timestamp + '\n');
};
//onError Callback receives a PositionError object
function onError(error) {
alert('code: ' + error.code + '\n' +
'message: ' + error.message + '\n');
}
var options = { maximumAge: 3000, timeout: 5000, enableHighAccuracy: true };
navigator.geolocation.getCurrentPosition(onSuccess, onError, options);
}
Retour:
D/CordovaNetworkManager( 1239): Connection Type: 3g
D/CordovaNetworkManager( 1239): Connection Extra Info: epc.tmobile.com
D/CordovaWebViewImpl( 1239): onPageFinished(file:///android_asset/www/index.html)
D/dalvikvm( 1239): GC_EXTERNAL_ALLOC freed 457K, 49% free 3174K/6151K, external 901K/1038K, paused 3ms
I/InputReader( 843): Device reconfigured: id=0x0, name=qwerty2, display size is now 240x400
I/InputManager-Callbacks( 843): No virtual keys found for device qwerty2.
D/SystemWebChromeClient( 1239): file:///android_asset/www/js/app.js: Line 127 : code: 3
D/SystemWebChromeClient( 1239): message: Timeout expired
Pourquoi toujours des retours délai d'attente expiré?
Avez-vous trouvé une solution? Je suis à la recherche d'une réponse.
En espérant une réponse, trop.
J'ai trouvé un travail de réponse (pour moi) ici: stackoverflow.com/questions/12859425/...
J'ai travaillé sur la réponse et l'a affiché en dessous.
En espérant une réponse, trop.
J'ai trouvé un travail de réponse (pour moi) ici: stackoverflow.com/questions/12859425/...
J'ai travaillé sur la réponse et l'a affiché en dessous.
OriginalL'auteur Matias Gentiletti | 2015-05-23
Vous devez vous connecter pour publier un commentaire.
Il peut paraître stupide, mais, avez-vous activer le GPS dans votre téléphone?
C'est 99% du temps, pas le cas. Voir ma réponse.
même ici. surprenant, il a travaillé comme un charme après un redémarrage
OriginalL'auteur Virako
J'ai enfin résolu toutes les raisons pour lesquelles cela se produit. Cela est dû à deux options:
maximumAge
ettimeout
. Vous pouvez trouver vous-même l'exécution de votre application sur un périphérique et/ou un émulateur. Dans mon cas, les deux. Le téléphone GPS fonctionne plus que l'émulateur a été. Les services de localisation doit être activé sur l'appareil. Vous devez également définir un délai d'attente ou il se détraque. Pour l'émulateur, vous devez envoyer les données GPS de votre application via les paramètres de l'émulateur etmaximumAge
doit être défini sur un nombre (En millisecondes) de plus que la façon dont il y a longtemps que vous l'avez envoyé.J'ai aussi le mien d'installation de sorte que si une erreur se produit, il essaie à nouveau en appel d'une fonction comme celle-ci donc, il va continuer à essayer jusqu'à ce qu'il obtient:
Ma fonction d'erreur est comme ceci:
et ma réussite fonction comme ceci:
Puis mettre tout cela ensemble avec quelque chose comme ceci dans votre onDeviceReady bloc:
Une fois que vous avez tout ce que le programme d'installation, il devrait fonctionner sur votre appareil amende. Pour l'émulateur, vous devez charger votre application, puis envoyer les coordonnées GPS de l'application en cliquant sur le bouton " ... " dans le menu flottant et en cliquant sur envoyer:
Une fois que vous avez depuis votre application est toujours une nouvelle tentative, il devrait alors apparaitre le qui-vive avec les coordonnées GPS.
OriginalL'auteur xendi
J'ai trouvé une réponse ici, qui semblait fonctionner pour moi:
Simplement le redémarrage de l'appareil.
Travaillé pour moi, je l'espère pour vous aussi.
A fonctionné pour moi (Cordova construire déployé sur un Asus Zenfone 3 USB)
OriginalL'auteur Codecat
Je suis sur un Samsung Tab S. Il a travaillé pour moi quand j'ai enlevé maximumAge et le délai d'expiration de la watchOptions comme ci-dessous:
OriginalL'auteur Randev