PhoneGap的科尔多瓦暂停应用程序时2.7.0错误(Phonegap cordova 2.7.0

2019-09-02 04:11发布

我已经使用PhoneGap的工具“创建”(创建project_folder PACKAGE_NAME PROJECT_NAME)创建一个干净的科尔多瓦2.7.0项目,我已经部署了应用程序,以我的Nexus 4(androind 4.2.2)。 无码已被写入。

该应用程序已经没有错误执行,因为它表现出了PhoneGap的标识和“阿帕奇科尔多瓦设备准备就绪”。 问题是,当我点击了标准的Android右按钮(显示最近运行的应用程序),我在eclipse logcat的一个错误ocurrs看到:

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的:尝试;捕捉(E){的console.log( '例外击发从天然破坏事件')。{cordova.require( '科尔多瓦/信道')onDestroy.fire()} ;};)“

这种行为总是发生(有时它需要通过使用最新的应用列表按钮两次暂停应用程序)。

有任何想法吗?

先感谢您。

更新:由于建议罗曼·布劳恩使用2.4.0不会发生错误。

Answer 1:

此错误出现科尔多瓦2.5发布后

然而,没有人找到了解决办法。

我建议报告漏洞的PhoneGap的团队,和降级科尔多瓦版本2.4,如果它是可能的。



Answer 2:

尝试在扩展DroidGap Java类的onCreate方法增加负载超时值:

super.setIntegerProperty("loadUrlTimeoutValue", 60000); 


Answer 3:

我有同样的问题,这是也固定的,当我用2.4,但我决定将它张贴作为一个问题的问题跟踪: https://issues.apache.org/jira/browse/CB-3749

显然,这对我来说发生的事情,因为我已经删除了我的清单几行,因为我是针对Android的10,但我应该只是针对Android的17日以来的PhoneGap本身适用于Android的10,有没有我的目标吧。



Answer 4:

我是有这个恼人的问题,直到我意识到我用错了Cordova.js文件。 改变了它,问题就消失了。 即时通讯使用的PhoneGap 2.7。



Answer 5:

我认为,这个错误是非常广泛和对症一些issues.I的已经得到了它,当我重写onPageFinished和onPageStarted我的WebView客户端上的方法和忘了打电话给super.onPageFinished(视图,URL)为例。

需要注意的是超时是在这些方法中“清除”:

https://github.com/apache/cordova-android/blob/master/framework/src/org/apache/cordova/CordovaWebViewClient.java#L299



Answer 6:

我有同样的错误与科尔多瓦2.5恢复到2.4。 我最近尝试了2.9,我不再得到错误。



Answer 7:

请不要在活动的的onPause使用webview.handlePause(假)()方法,但只有在活动的的onDestroy使用webview.handleDestroy()()方法。

它发生用户重新打开活动时,我们在我们的应用程序那样固定它。

科尔多瓦-2.5.jar



文章来源: Phonegap cordova 2.7.0 error when pausing app