CORS + Android Webview, no funciona en el dispositivo (pero sí en el emulador)

Tengo un programa de teléfono HelloWorld de trabajo con jQuery móvil rociado en como se describe aquí: http://jquerymobile.com/demos/1.1.0/docs/about/getting-started.html . He añadido un pequeño javascript a esto para experimentar con el Compartimiento de Recursos de Origen Cruzado:

<script> $(document).bind("pageinit", function() { $.support.cors = true; $.mobile.allowCrossDomainPages = true; $.mobile.changePage("http://jquery.com"); }); </script> 

Esto funciona muy bien en el emulador (2.3), jquery.com se carga sobre la demo móvil jquery. Sin embargo, en los actuales dispositivos Android 2.3 (T-Mobile G2 ejecutando Cyanogen, Galaxy SII, Galaxy Player) la llamada changePage () no hace nada.

2 Solutions collect form web for “CORS + Android Webview, no funciona en el dispositivo (pero sí en el emulador)”

Pruebe mobileinit lugar de pageinit . Debido a que el evento se vincula a jQuery normal y para jQuery móvil el evento de inicialización es mobileinit.

The $.mobile.allowCrossDomainPages option must be set before any cross-domain request is made so we recommend wrapping this in a mobileinit handler .

Llamar a la función $.mobile.changePage() dentro de la función pageinit suena como una mala idea porque eso debería causar un bucle infinito. La función $.mobile.changePage() inicializa la página especificada como el parámetro de target , de modo que cada vez que llame a $.mobile.changePage() también dispara un evento pageinit .

Probablemente quiera enlazar con el evento mobileinit para sobrescribir la variable $.support.cors antes de que jQuery Mobile se inicialice:

 <script src="jquery.js"></script> <script> $(document).bind("mobileinit", function() { $.support.cors = true; $.mobile.allowCrossDomainPages = true; $.mobile.changePage("http://jquery.com"); }); </script> <script src="jquery-mobile.js"></script> 

Documentación relacionada:

  • Error log sqlite no se ha podido cargar desde /cachedGeplacement.db
  • Es la navegación en la memoria del teléfono de Android posible utilizando phoengap?
  • Ejecutar aplicación Android phonegap en segundo plano
  • ¿Cómo implementar carga más función en android usando phonegap?
  • Deslice con jQuery Mobile 1.2, PhoneGap 2.1 y Android 4.0.4 no funcionan correctamente
  • Phonegap + Jquery móvil en Android: varias páginas HTML Javascript no funciona
  • JQuery Mobile: el texto de entrada enfocado no respeta el índice z, que aparece por encima de todo lo demás
  • Href no funciona, cómo redirigir a una página específica en PhoneGap?
  • Pantalla parpadeante de jQuery Mobile durante las transiciones
  • JQueryMobile: ¿existe data-transition = "slideback" o similar?
  • Impresión desde la web en Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.