Foro

Home Forums General Plugin CrossWalk en Phonegap

This topic contains 40 replies, has 6 voices, and was last updated by Jose Jesus Perez Rivas Jose Jesus Perez Rivas 4 años, 5 meses .

Viendo 15 respuestas - de la 16 a 30 (de 41 en total)
  • Plugin CrossWalk en Phonegap

    Intervenciones
  • Ángel Luis Sánchez
    Ángel Luis Sánchez 
    Participant

    Me da un error que no comprendo muy bien, he estado buscando y pone que es por utilizar crosswalk. El error me sale en un popup nada más entrar a la app (que es cuando lanzo una peticion ajax). Me muestra lo siguiente:

    SSL CERTIFICATE ERROR ALERT

    Alguna idea?


    angelru
    angelru 
    Participant

    Añade al config.xml

     Code: arbitrary (select
    1.
    2.

    <gap:plugin name="cordova-plugin-whitelist" source="npm" />
    <access origin="*" />

    • This reply was modified 4 años, 6 meses by angelru angelru.

    • This reply was modified 4 años, 6 meses by angelru angelru.
    Ángel Luis Sánchez
    Ángel Luis Sánchez 
    Participant

    Buenas, ya tenía puesto:

     Code: arbitrary (select
    1.
    2.
    3.
    4.
    5.
    6.
    7.

    <gap:plugin name="cordova-plugin-whitelist" source="npm" />

      <allow-intent href="http://*/*" />
      <allow-intent href="ftp://*/*" />
      <allow-navigation href="*" />
      <allow-intent href="*" />
      <access origin="*" />

    y me seguía saliendo el mismo error :(
    ¿Qué otro motivo podría ser?


    jcesarmobile 
    Participant

    Haces la petición ajax a una url con https?
    Tiene pinta de que no confíe en el certificado de dicha página


    Twitter: https://twitter.com/jcesarmobile
    Tutoriales e información sobre phonegap: http://www.phonegap.es/
    Stack Overflow en Español: http://es.stackoverflow.com/


    dangerousdave
    dangerousdave 
    Participant

    Yo he realizado pruebas y efectivamente si desde la app haces una petición de un formulario con un @mail que quieres proteger con envio mediante https:// y lo haces a un localhost con un certificado autofirmado da error pero si lo haces sobre un host en producción funciona perfectamente.


    Ángel Luis Sánchez
    Ángel Luis Sánchez 
    Participant

    Si, realizo la petición ajax mediante https.
    Entonces, ¿es un problema que se puede resolver en la app o es del proxy?


    jcesarmobile 
    Participant

    Es que tu dispositivo no confía en el certificado, si estas probando en local y es autofirmado como comenta dangerousdave es algo normal, si te pasa en producción tendrás que cambiar el certificado del servidor y usar uno firmado por una entidad en la que confíen los dispositivos android (geotrust, verisign, etc)


    Twitter: https://twitter.com/jcesarmobile
    Tutoriales e información sobre phonegap: http://www.phonegap.es/
    Stack Overflow en Español: http://es.stackoverflow.com/


    Ángel Luis Sánchez
    Ángel Luis Sánchez 
    Participant

    ¿Se puede ignorar el certificado de alguna manera o “saltarselo” cuando está en localhost?


    dangerousdave
    dangerousdave 
    Participant

    Lo que puedes hacer es que en local para hacer las pruebas utilices http:// y cuando generes la app par subirla utilices un buscador para sustituir por https:// (o a mano si está en un par de sitios).

    Esto sería lo más cómodo: En AndroidManifiest.xml se podía poner como android:dubug=true y te aceptaba los certificados pero no llegué a hacer que funcionara… por lo que opté por hacer lo que te digo arriba XD.

    • This reply was modified 4 años, 6 meses by dangerousdave dangerousdave. Reason: Corrección ortográfica

    • This reply was modified 4 años, 6 meses by dangerousdave dangerousdave. Reason: Corrección ortográfica
    Ángel Luis Sánchez
    Ángel Luis Sánchez 
    Participant

    Probé lo que me dijiste y me sigue sin funcionar, es verdad que si lo pruebo con http ya no me salta el error de SSL, pero no me muestra nada :(
    También cambié el plugin.xml del whitelist y puse
    <param name=”debug” value=”true” />

    y tampoco. ¿Alguna otra forma?


    dangerousdave
    dangerousdave 
    Participant

    Puuuuues con WhiteList instalado y con el config.xml bien configurado deberías poder hacer perfectamente una request ajax…

    Yo lo que hago es determinar unas variables para poder probar en web y en smartphone así todo lo que es creación y pruebas las veo y cambio facilmente (refrescando siempre la cache) en el navegador (chrome) y una vez lo tengo funcionando cambio esos parametros y lo testeo en el smartphone, evidentemente tema de plugins y demás no queda otra que probar en smartphone directamente pero bueno algo de tiempo te ahorras y tienes todas las ventajas de las herramientas de desarrollador para ver tiempos de carga, errores, dom, etc…

    Revisa todo, limpia cache y prueba otra vez… seguramente sea alguna tontería de esas que dan por culo y al final la encuentras y dices :oops: que tontería.


    Ángel Luis Sánchez
    Ángel Luis Sánchez 
    Participant

    He estado investigando por ahí, y encontré esto: Crosswalk SSL. Pero claro, al crearme directamente con el CLI el proyecto, pues no dispongo de acceso a esta clase CordovaWebViewClient.java y por tanto no puedo sobreescribir el método.

    ¿Alguna idea?


    Ángel Luis Sánchez
    Ángel Luis Sánchez 
    Participant

    Bueno chicos, gracias por las respuestas, ya lo solucioné :)

    La verdad es que toqué tantas cosas y probé tanto que nose como me ha terminado funcionando jajajaja
    Me volví a instalar los plugins de WhiteList y CrossWalk y aunque me seguía saliendo lo del error de SSL ERROR ALERT CERTIFICATE (o algo así), las funciones AJAX me van perfectamente y la velocidad de la app ha subido muchísimo!!! y eso que aún no la probé con los JS comprimidos.


    Ángel Luis Sánchez
    Ángel Luis Sánchez 
    Participant

    Buenas de nuevo y perdón por ser tan pesado xD
    No se porqué ahora no me funcionan las descargas desde el ftp, ¿sabéis si hay que meterle algo al config.xml al usar crossWalk? Tengo esto en el XML:

     Code: arbitrary (select
    1.
    2.
    3.
    4.
    5.
    6.

    <allow-intent href="http://*/*" />
      <allow-intent href="https://*/*" />
      <allow-intent href="ftp://*/*" />
      <allow-navigation href="*" />
      <allow-intent href="*" />
      <access origin="*" />

    Saludos!


    Ángel Luis Sánchez
    Ángel Luis Sánchez 
    Participant

    Además, tampoco puedo recibir notificaciones usando DevicePush cuando estoy dentro de la app, si estoy fuera si me llega la notificación.
    Alguna idea? En el config.xml también tengo:

    1.  <access origin="*.devicepush.com" />


Viendo 15 respuestas - de la 16 a 30 (de 41 en total)

You must be logged in to reply to this topic.

RT @PhoneGapBuild: Apache Cordova CLI-9.0.0 has been added to PhoneGap Build! This version uses Android 9.0 (API level 28) by default Re…09:41 AM Feb 19th