tutorial javascript android cordova phonegap-build

javascript - phonegap build tutorial



PhoneGap Build: ¿cómo abrir una URL externa en el navegador del dispositivo en Android? (6)

@George Siggouroglou: no es una buena idea usar una identificación para elementos que eventualmente aparecerán más de una vez en un documento. En cambio, es una buena práctica hacer que el código sea más modular.

si espera dispositivos táctiles, también es una buena opción usar "tocar" antes de "hacer clic" porque se dispara mucho más rápido y más rápido que un clic. para verificar las cosas con capacidad táctil, prefiero usar modernizr porque hace que la detección de características sea muy fácil.

El evento de toque de jQuery Mobile se activa después de un evento de toque rápido y completo que se produce en un solo objeto objetivo. Es el gesto equivalente a un evento de clic estándar que se desencadena por el estado de liberación del gesto táctil. https://api.jquerymobile.com/tap/

espero que ayude a alguien

**html code:** <a class="ext-link" href="#">Google it</a>

o

<button class="ext-link" href="#">Google it</button>

Javascript (con jQuery):

//define tap or click event type on root level (can be combined with modernizr) iaEvent = "click"; if (typeof navigator !== "undefined" && navigator.app) { iaEvent = "tap"; } $(''.ext-link'').each.bind(iaEvent, function() { if (typeof navigator !== "undefined" && navigator.app) { // Mobile device. var linktarget = this.attr("href"); navigator.app.loadUrl(linktarget, {openExternal: true}); } else { // Possible web browser window.open(linktarget, "_blank"); } });

Las URL externas no se abren en el navegador del sistema en mi aplicación PhoneGap de Android. Estoy usando PhoneGap Build 2.3.0.

De acuerdo con la documentación de Cordova usé target ''_system'':

window.open(''http://www.myurl.nl'', ''_system'');

En mi config.xml tengo:

<plugin name="InAppBrowser" value="org.apache.cordova.InAppBrowser" /> <access origin="*" browserOnly="true" />

Pero aún así los enlaces abiertos en mi aplicación webview.

¿Cómo resolver esto?


Esta pregunta ahora es un poco antigua, pero sentí que valía la pena actualizarla. Esto ahora funciona bien con PhoneGap Build cuando se usa con 2.9.0.

Lo he compilado y probado en Android 4.3 y iOS 6.1.3. No tengo el complemento InAppBrowser en mi aplicación, ya que abre las páginas, en lugar de hacer que el navegador nativo las abra, y solo tengo lo siguiente para las etiquetas de acceso:

<access origin="http://127.0.0.1*"/> <access origin="http://phonegap.com" subdomains="true" />


Esto funcionó para mí. Phonegap 3.1.0.

código HTML:

<a id="ext-link" href="#">Google it</a>

o

<button id="ext-link" href="#">Google it</button>

Javascript (con jQuery + cordova):

$("#ext-link").on("click"), function() { if (typeof navigator !== "undefined" && navigator.app) { // Mobile device. navigator.app.loadUrl(''http://www.google.com/'', {openExternal: true}); } else { // Possible web browser window.open("http://www.google.com/", "_blank"); } });

Espero que ayude.


No es la respuesta cuando desea seguir utilizando PhoneGap Build, pero resolví el problema configurando un entorno de desarrollo para Cordova (PhoneGap) en mi máquina y compilando la aplicación localmente. En Cordova 2.5.0 window.open(''http://www.myurl.nl'', ''_system''); Funciona perfecto, abrirá el enlace en el navegador del sistema.

Por lo tanto, mi consejo es que dejes de usar PhoneGap Build y comiences a compilar tu aplicación localmente. Aquí le mostramos cómo configurar su entorno de desarrollo para Cordova >>


Respuesta tardía, pero puede ser que pueda ayudar a alguien.

navigator.app.loadUrl(''https://google.com/'', { openExternal:true });

Córdoba 3.3.1


Utilizar esta

window.open(''http://www.myurl.nl'', ''_blank'', ''location=yes'');