javascript - slow - getCurrentPosition casi siempre falla en PhoneGap 1.3 en iOS 6
navigator geolocation slow (1)
La respuesta: Establezca EnableLocation en PhoneGap.plist en NO. Aparentemente, tenerlo configurado en SÍ hace que las aplicaciones PhoneGap que se ejecutan en iOS 6 tengan problemas de memoria. Se implementó una solución, pero a partir de ahora, no creo que esté en la versión oficial de PhoneGap. FWIW, no puedo encontrar a nadie que realmente sepa lo que hace EnableLocation.
Tengo una aplicación PhoneGap 1.3 que hace algo de geolocalización que funciona bien en iOS 4 y 5. En iOS 6, getCurrentPosition casi siempre activa la devolución de llamada fallida. Después de una falla, las llamadas getCurrentPosition adicionales no activan las devoluciones de llamada exitosas o fallidas. Reduje la aplicación al siguiente código, que muestra el mismo comportamiento que mi aplicación completa.
document.addEventListener("deviceready", function() {
console.log(''deviceready!!!'');
successCallback = function() {
console.log(''success!!!'');
};
failureCallback = function() {
console.log(''failure!!!'');
navigator.geolocation.getCurrentPosition(function() { console.log(''success 2''); }, function() { console.log(''failure 2''); });
};
navigator.geolocation.getCurrentPosition(successCallback, failureCallback);
}, false);
Cuando falla, esto es lo que obtengo en el registro:
2012-09-24 16:26:46.576 MyAppName[7250:16703] [INFO] deviceready!!!
2012-09-24 16:26:56.582 MyAppName[7250:16703] [INFO] failure!!!
Nada mas.
¿Alguna idea de dónde ir con esto?