应用程序错误-与服务器的连接失败。(file:///android_asset/www/index.html)
应用程序在启动时死亡(连接到服务器失败) 我有一个Android应用程序,我正在使用PhoneGap BUILD编写。该应用程序之前运行良好,但现在看来我在优化应用程序后出现了此错误(仅限于某些UI更改) 1) 当我启动应用程序时,我(通常)会得到: 应用程序错误-与服务器的连接不成功。 (file:///android_asset/www/index.html)应用程序错误-与服务器的连接失败。(file:///android_asset/www/index.html),android,cordova,Android,Cordova,应用程序在启动时死亡(连接到服务器失败) 我有一个Android应用程序,我正在使用PhoneGap BUILD编写。该应用程序之前运行良好,但现在看来我在优化应用程序后出现了此错误(仅限于某些UI更改) 1) 当我启动应用程序时,我(通常)会得到: 应用程序错误-与服务器的连接不成功。 (file:///android_asset/www/index.html) 对不起,如果这是重复的任何问题。我在这里看到了一些类似的问题,但我找不到一个完美的答案或解决方案。就我的情况而言,在我最后一次改变之
对不起,如果这是重复的任何问题。我在这里看到了一些类似的问题,但我找不到一个完美的答案或解决方案。就我的情况而言,在我最后一次改变之前,它一直运作良好。正如你所说,在同一主题上有许多重复的问题。任何关于你的情况的解释 这个问题可以通过添加一个超时来调用index.html来解决 ie您需要添加
super.setIntegerProperty(“loadUrlTimeoutValue”,70000)代码>在activity.java文件中(src/com/yourProj/-/youravity.java内)
此行上方:super.loadUrl(“file:///android_asset/www/index.html");代码>
说明:
这可能是由于以下原因造成的
核心原因:问题可能是由于模拟器的速度太慢,因此网络速度太慢,无法及时完成通信
这可能是由于:
您的代码/数据/图像太大(我猜您使用的是一些图像,正如您所说,您对UI进行了一些修改,可能是图像的大小太大)
您的脚本可能有一个无限循环或长循环,因此加载时间太长
您将使用太多的脚本(jQuery、iscroll等。更多的插件或脚本)
我在我的项目上也有同样的想法
我尝试了“super.setIntegerProperty(“loadUrlTimeoutValue”,70000);”但没有用
我确保所有文件都正确链接[CSS、JS文件等],使用w3c验证程序[]验证HTML,并清理项目[project->Clean]
它现在加载和执行时不会出现相同的错误
希望这有帮助请删除远程链接的jQuery文件,例如:
https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js
相反,下载此文件并从本地js文件夹加载,使URI:
js/jquery.min.js
以下是工作解决方案
创建一个新页面main.html
例如:
<!doctype html>
<html>
<head>
<title>tittle</title>
<script>
window.location='./index.html';
</script>
</head>
<body>
</body>
</html>
到
现在构建应用程序,它可以在任何慢速连接上工作
注意:这是我在2013年发现的一个解决方法。我有一个类似的问题,根据上述建议,我首先添加了“super.setIntegerProperty(“loadUrlTimeoutValue”,70000)”,但这没有帮助。
所以我尝试了Project->Clean,它成功了,我现在就可以启动这个应用了
Avinash…在我的例子中,我使用的是ionic,我只是关闭了对话框,转到emulator中的应用程序,然后从那里运行我的应用程序。这起作用了。我从这里得到了这个想法,因为这只是一个超时问题。发生此错误的另一个原因是:../YourApp/www/
中没有index.html
我只是遵循了,其中一个步骤是:
$ rm www/index.html
在iOS上,这没有问题,因为在构建过程中,编译器会使用一些默认的HTML。但是,在为android构建时,没有使用示例index.html
。我花了一些时间才弄明白(“为什么它可以在iOS上工作,但不能在android上工作…?)
简单解决方案:创建index.html,将其保存在../YourApp/www
,重建…等等,瞧!在config.xml文件中添加以下行:
<preference name="loadUrlTimeoutValue" value="700000" />
试试这个
1.将index.html重命名为“main.html”
2.创建一个新的“index.html”,并将以下内容放入其中:
<!doctype html>
<html>
<head>
<title>tittle</title>
<script>
window.location='./main.html';
</script>
<body>
</body>
</html>
窃窃私语
window.location='./main.html';
3.重建你的应用程序!不再有错误
删除index.html中的外部脚本
更改此项:
<script src="http://code.highcharts.com/highcharts-more.js"></script>
到
延长加载超时限制不会解决导致错误的问题,它只会避免系统显示消息,但会影响性能
实际原因:您可能正在将文件或图像链接到远程位置,而这些资源的加载时间太长。(这可能是最常见的错误)
最终解决方案:将所有需要的脚本、图像和css移动到一些本地文件夹,并在本地加载它们
性能将得到提高,错误将得到有效解决。检查您的index.html
文件。如果您使用外部资源,而这些资源在运行应用程序时不可用,则可能会出现此错误
在我的例子中,我忘记删除调试器脚本(weinre)上的链接
所以应用程序在emulator上工作,因为http://192.168.0.102:8080/
在我的本地主机上,可用于emulator
但当我在手机上安装应用程序时,我也遇到了同样的错误,因为192.168.0.102在移动网络上不可用。如果您使用的是visual studio。在更改config.xml后,有时您需要使用它
清洁构建解决方案
重建你的应用程序
这对我来说很有效。在我的情况下,问题是由于我的WiFi中的互联网连接丢失。我面临着同样的问题。我注意到在我的索引中,我同时具有“设备就绪”和“document.ready”功能,因此删除其中一个可以修复我的问题:)在ionic应用程序上修复此问题,只需添加
<preference name="loadUrlTimeoutValue" value="700000" />
在这一行之后立即添加到config.xml文件
<platform name="android">
我的情况是,我仍然有一个脚本标记指向Weinre的本地实例。Weinre没有运行。因此-超时。我是creatin
<script src="project_folder/highcharts-more.js"></script>
<script src="http://192.168.0.102:8080/target/target-script-min.js#anonymous"></script>
<preference name="loadUrlTimeoutValue" value="700000" />
<platform name="android">