【发布时间】:2013-05-07 16:57:43
【问题描述】:
我使用 phonegap 工具“create”创建了一个干净的 cordova 2.7.0 项目 (创建 project_folder package_name project_name) 我已经将该应用程序部署到我的 Nexus 4 (androind 4.2.2)。 没有编写任何代码。
该应用程序已执行且没有错误,因为它显示了 phonegap 徽标和“apache cordova device is ready”。 问题是,当我点击标准的 android 右键(显示最近运行的应用程序)时,我在 eclipse LogCat 中看到出现错误:
05-07 18:29:54.957: D/webviewglue(24649): nativeDestroy view: 0x731f4738
05-07 18:30:10.163: D/DroidGap(24649): Paused the application!
05-07 18:30:10.163: D/CordovaWebView(24649): Handle the pause
05-07 18:30:10.453: W/IInputConnectionWrapper(24649): showStatusIcon on inactive InputConnection
05-07 18:30:10.743: D/DroidGap(24649): onDestroy()
05-07 18:30:10.743: D/CordovaWebView(24649): >>> loadUrl(javascript:try{cordova.require('cordova/channel').onDestroy.fire();}catch(e){console.log('exception firing destroy event from native');};)
05-07 18:30:10.743: D/PluginManager(24649): init()
05-07 18:30:10.753: D/CordovaWebView(24649): >>> loadUrlNow()
05-07 18:30:30.765: E/CordovaWebView(24649): CordovaWebView: TIMEOUT ERROR!
05-07 18:30:30.765: D/Cordova(24649): CordovaWebViewClient.onReceivedError: Error code=-6 Description=The connection to the server was unsuccessful. URL=javascript:try{cordova.require('cordova/channel').onDestroy.fire();}catch(e){console.log('exception firing destroy event from native');};
05-07 18:30:30.765: D/DroidGap(24649): onMessage(onReceivedError,{"errorCode":-6,"url":"javascript:try{cordova.require('cordova\/channel').onDestroy.fire();}catch(e){console.log('exception firing destroy event from native');};","description":"The connection to the server was unsuccessful."})
出现此错误后,我从列表中点击应用程序,然后出现一个标题为“应用程序错误”的弹出窗口,其中包含以下消息:
"连接服务器不成功。(javascript:try{cordova.require('cordova/channel').onDestroy.fire();}catch(e){console.log('异常触发从本地销毁事件');};)"
这种行为总是会发生(有时需要通过使用最近的应用列表按钮两次来暂停应用)。
有什么想法吗?
提前谢谢你。
更新:根据 Romain Braun 的建议,使用 2.4.0 不会发生错误。
【问题讨论】:
-
可以降级到 2.4 吗?
-
显然这个bug出现在Cordova2.5之后
-
正如@RomainBraun 所建议的那样,使用 2.4.0 不会发生错误。谢谢!
-
不客气。不过,将错误报告给 phonegap 团队可能是个好主意。我看到你不是唯一一个得到这个错误的人,但没有人找到解决方案。
-
我写这个是为了回答,所以这个问题不会一直“悬而未决”。如果你能验证它,请:)