2012-08-14 46 views
0

我试图使用Worklight将应用程序部署到Android。将Worklight应用程序部署到Android模拟器上会出现错误

我以前见过类似的错误,但没有给出具体的答案。当我在Android模拟器上启动应用程序时触发该错误,它是这样的:

08-13 08:22:26.262:E/Web控制台(347):TypeError:表达式结果'cordova.exec'undefined不是一个功能。在文件中:///data/data/com.Test/files/www/default/wlclient/js/wlgap.android.js:697

现在,我相信这个js文件是在运行时注入的,因此我不知道如何以及在哪里编辑它。

抛出稍后错误是这样的:

八月8日至13日:22:30.982:E/Web控制台(347):类型错误:表达的结果 'h.body()' 未定义不是对象。 at file:///data/data/com.Test/files/www/default/dojo/mobile-ui-layer.js:257

所以问题在于Dojo和/或Cordova-PhoneGap。问题是,我如何解决它并让我的应用程序工作?

我相信这可能是wlCommonInit的一个问题,因为它在调用之前不能有任何东西,但是,我在解析Dojo之前先解析它。如果我在解决Dojo问题之前不解析Dojo,则会出现Dojo解析错误。

任何帮助是真正的赞赏。

谢谢!

+1

做了答案http://stackoverflow.com/questions/11955504/cordova-exec-causing-problems-in-my-android-project/12022989解决了这个问题? – 2012-08-18 23:20:11

回答

0

确保您的所有Dojo解析都在wlCommonInit中完成 - 这意味着将负载解析设置为false并在wlCommonInit中以编程方式进行解析。

1

你可以在android本地项目中看到wlgap.android.js。 您应该将您的Dojo代码放入wlCommonInit(或wlEnvInit)中,并且您不需要检查dom或设备是否已准备就绪(由启动wlCommonInit之前由Worklight运行的进程进行测试)。

相关问题