android - studio - instalar cordova ionic




Error de aplicación: la conexión al servidor no fue exitosa.(archivo:///android_asset/www/index.html) (10)

La aplicación se apaga al iniciar (la conexión al servidor no tuvo éxito)

Tengo una aplicación de Android que estoy escribiendo usando PhoneGap BUILD. La aplicación funcionaba bien antes, pero ahora parece que recibo este error después de refinar mi aplicación (solo algunos cambios de UI)

1) Cuando inicio la aplicación, normalmente obtengo:

Error de aplicación: la conexión al servidor no fue exitosa. (archivo: ///android_asset/www/index.html)

Lo siento si esto es una duplicación de cualquier pregunta. He visto algunas preguntas similares aquí, pero no pude encontrar una respuesta o solución perfecta. Como en mi caso, funcionaba bien hasta mis últimos cambios.


Como dijiste, hay muchas preguntas duplicadas sobre el mismo tema. De todos modos explicando tu situación.

El problema podría resolverse agregando un tiempo de espera para llamar a su index.html

es decir, necesita agregar super.setIntegerProperty("loadUrlTimeoutValue", 70000); en su archivo activity.java (dentro de src / com / yourProj / - / youractivity.java) sobre esta línea: super.loadUrl("file:///android_asset/www/index.html");

Explicación:

Esto puede suceder debido a las siguientes razones

La razón principal: el problema probablemente se deba a la velocidad del emulador, por lo que la red es demasiado lenta para completar la comunicación de manera oportuna.

Esto puede ser debido a:

  1. Tu código / datos / imagen es de demasiado tamaño (supongo que en tu caso estás usando algunas imágenes, como dijiste que hiciste algunas modificaciones en la interfaz de usuario, puede ser que el tamaño de las imágenes sea alto)
  2. Su secuencia de comandos puede tener un ciclo infinito o largo, por lo que lleva mucho tiempo cargar.
  3. Utilizará demasiados scripts (jQuery, iscroll, etc. etc. más cantidad de complementos o scripts)

Comprueba tu archivo index.html . Si usa recursos externos, que no están disponibles cuando ejecuta la aplicación, puede obtener este error.

En mi caso, olvidé eliminar el enlace en el script de depurador (weinre).

<script src="http://192.168.0.102:8080/target/target-script-min.js#anonymous"></script>

Así que la aplicación funcionó en el emulador porque http://192.168.0.102:8080/ estaba en mi servidor local y estaba disponible para el emulador.

Pero cuando configuré la aplicación en el teléfono móvil tuve el mismo error porque 192.168.0.102 no estaba disponible desde la red móvil.


Elimine los scripts externos en su index.html

Cambia esto:

<script src="http://code.highcharts.com/highcharts-more.js"></script>

a

<script src="project_folder/highcharts-more.js"></script>

En mi caso, estoy usando iónico y simplemente cerré el diálogo para aplicaciones en el emulador y ejecuté mi aplicación desde allí. Esto funcionó. Tengo la idea de eso desde que era solo un problema de tiempo de espera.


La ampliación del límite de tiempo de espera de carga no resolverá el problema que causó el error, solo evitará que el sistema muestre el mensaje, pero el rendimiento se verá afectado en absoluto.

Razón real: puede estar vinculando archivos o imágenes a ubicaciones remotas, y esos recursos tardan demasiado en cargarse. (este es probablemente el error más común)

Solución definitiva: mueva todos los scripts, imágenes y CSS necesarios a algunas carpetas locales y cárguelos localmente ...

El rendimiento aumentará y el error se resolverá efectivamente.


Otra razón por la que este error puede ocurrir es: no hay index.html en .../YourApp/www/ !

Acabo de seguir la guía iónica , y uno de los pasos es:

$ rm www/index.html

En iOS esto no es un problema, ya que durante la compilación el compilador toma en su lugar HTML predeterminado. Sin embargo, al compilar para Android, NO se usa el ejemplo index.html . Me llevó algún tiempo averiguarlo ("¿POR qué funciona en iOS, pero no en Android ...?)

Solución fácil: crea un index.html, .../YourApp/www en .../YourApp/www , reconstruye ... et voila!


Prueba esto,

1. Renombre su index.html a "main.html"

2. Cree un nuevo "index.html" y coloque el siguiente contenido en él:

<!doctype html>
<html>
  <head>
   <title>tittle</title>
   <script>
     window.location='./main.html';
   </script>
  <body>
  </body>
</html>

3. ¡Reconstruye tu aplicación! ¡No más errores!


Si estás usando Visual Studio. Después de cambiar config.xml a veces necesita esto

solución de compilación limpia, reconstruye tu aplicación

Está funcionando para mí.


Tuve un problema similar y, según las sugerencias anteriores, primero agregué "super.setIntegerProperty (" loadUrlTimeoutValue ", 70000);" pero eso no ayudó. Así que probé Project -> Clean, ¡funcionó y ahora puedo iniciar la aplicación!

Avinash ...


Aquí está la solución de trabajo

crear una nueva página main.html

ejemplo:

<!doctype html>
<html>
  <head>
   <title>tittle</title>
   <script>
     window.location='./index.html';
   </script>
  </head>
  <body>
  </body>
</html>

cambia lo siguiente en mainactivity.java

super.loadUrl("file:///android_asset/www/index.html");

a

super.loadUrl("file:///android_asset/www/main.html");

Ahora crea tu aplicación y funciona en cualquier conexión lenta

refernce .

NOTA: Esta es una solución alternativa que encontré en 2013.