Ошибка приложения. Соединение с сервером не увенчалось успехом. (файл: ///android_asset/www/index.html)

App Dies On Startup (подключение к серверу не увенчалось успехом)

У меня есть приложение для Android, которое я пишу, используя PhoneGap BUILD. Приложение работает нормально раньше, но теперь кажется, что я получаю эту ошибку после уточнения моего приложения (некоторые изменения пользовательского интерфейса 0)

1) Когда я запускаю приложение, я (обычно) получаю:

Ошибка приложения. Соединение с сервером не увенчалось успехом. (файл: ///android_asset/www/index.html)

Извините, если это дублирование любого вопроса. Я видел некоторые подобные вопросы здесь, но я не мог найти идеальный ответ или решение. Как и в моем случае, он работал нормально до моих последних изменений.

Solutions Collecting From Web of "Ошибка приложения. Соединение с сервером не увенчалось успехом. (файл: ///android_asset/www/index.html)"

Как вы сказали, в этой же теме много повторяющихся вопросов. Любое объяснение вашей ситуации.

Проблема может быть решена путем добавления таймаута для вызова вашего index.html

Т.е. вам нужно добавить super.setIntegerProperty("loadUrlTimeoutValue", 70000); В файле activity.java (внутри src / com / yourProj / – / youractivity.java) над этой строкой: super.loadUrl("file:///android_asset/www/index.html");

Объяснение:

Это может произойти по следующим причинам:

Основная причина: проблема, вероятно, связана со скоростью эмулятора, поэтому сеть слишком медленно завершает коммуникацию своевременно.

Это может быть связано с:

  1. Ваш код / ​​данные / изображение имеют слишком большой размер (я думаю, в вашем случае вы используете некоторые изображения, так как вы сказали, что сделали некоторые модификации пользовательского интерфейса, может быть размер изображений высок)
  2. У вашего скрипта может быть бесконечный или длинный цикл, поэтому для загрузки требуется слишком много времени.
  3. Вы будете использовать слишком много скриптов (jQuery, iscroll и т. Д. И т. Д. Больше плагинов или скриптов)

В файле config.xml добавьте эту строку:

 <preference name="loadUrlTimeoutValue" value="700000" /> 

Вот рабочее решение

Создать новую страницу main.html

пример:

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

Измените следующее в mainactivity.java

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

в

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

Теперь создайте приложение и работайте над любым медленным подключением

Обратитесь .

Удалите удаленные файлы jQuery, связанные с удаленно, например: https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js

Вместо этого загрузите этот файл и загрузите его из локальной папки js, создав URI:

js/jquery.min.js

Удалите внешние скрипты в index.html

Измените это:

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

в

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

У меня было то же самое в моем проекте.

Я попробовал "super.setIntegerProperty (" loadUrlTimeoutValue ", 70000);" но безрезультатно.

Я гарантировал, что все файлы были правильно связаны [CSS, JS-файлы и т. Д.], Проверили HTML с помощью w3c validator [ http://validator.w3.org/#validate_by_upload ] и очистили проект [Project -> Clean]

Теперь он загружается и выполняется без такой же ошибки.

Надеюсь это поможет

У меня была аналогичная проблема, и, основываясь на вышеприведенных предложениях, я впервые добавил «super.setIntegerProperty (« loadUrlTimeoutValue », 70000); Но это не помогло. Поэтому я попробовал Project -> Clean, это сработало, и я могу запустить приложение прямо сейчас!

Авинаш …

Попробуй это,

1.Зарегистрируйте свой index.html в "main.html"

2. Создайте новый «index.html» и поместите в него следующий контент:

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

3.Застройте свое приложение! Больше ошибок!

Расширение ограничения времени ожидания загрузки не решит проблему, вызвавшую ошибку, она просто позволит системе отображать сообщение, но производительность будет затронута.

Фактическая причина. Возможно, вы связываете файлы или изображения с удаленными местами, и эти ресурсы слишком долго загружаются. (Это, скорее всего, самая распространенная ошибка)

Окончательное решение: переместите все сценарии, изображения и css в некоторые локальные папки и загрузите их локально …

Производительность будет увеличена, и ошибка будет эффективно решена.

В моем случае я использую ионный, и я просто закрыл диалог, отправленный в приложения в эмулятор, и вместо этого запустил приложение. Это сработало. Я понял это отсюда, потому что это был просто вопрос времени.

Проверьте файл index.html . Если вы используете внешние ресурсы, недоступные при запуске приложения, вы можете получить эту ошибку.

В моем случае я забыл удалить ссылку на скрипт отладчика (weinre).

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

Поэтому приложение работало над эмулятором, потому что http://192.168.0.102:8080/ был на моем локальном хосте и доступен для эмулятора.

Но когда я настраивал приложение на мобильный телефон, у меня была такая же ошибка, потому что 192.168.0.102 не была доступна из мобильной сети.

Если вы используете визуальную студию. После изменения config.xml иногда вам нужно это

Решение для чистой сборки перестроит ваше приложение

Он работает для меня.

Другая причина, по которой может возникнуть эта ошибка, – это отсутствие index.html в .../YourApp/www/ !

Я только что последовал за ионным гидом , и один из шагов:

 $ rm www/index.html 

В iOS это не проблема, так как во время сборки компилятор вместо этого использует HTML по умолчанию. Однако, при создании для android, используется NO example index.html . Принял меня когда-нибудь, чтобы узнать («ПОЧЕМУ это работает на iOS, но не на андроиде …?)

Простое решение: создайте index.html, сохраните его под .../YourApp/www , rebuild … et voila!