嗨,大家好,我通过这个教程运行运行煎茶触摸/ PhoneGap的示例代码:问题在Android
http://www.sencha.com/learn/a-sencha-touch-mvc-application-with-phonegap
,并试图让Android上运行的代码。我设置了Eclipse和指定Android 2.3.3
我已经下载从Git的最终代码,但我不断收到错误(在logcat中):
02-01 14:59:08.709: E/Web控制台(16659):未捕获的ReferenceError:设备未在文件中定义:///android_asset/www/app/app.js:8
有问题的代码是:
Ext.regApplication({
name: 'app',
launch: function() {
this.launched = true;
this.mainLaunch();
},
mainLaunch: function() {
if (!device || !this.launched) {return;}
this.views.viewport = new this.views.Viewport();
}
});
我无论是在仿真器还是物理设备上运行,都会得到相同的错误。我有Weinre设置,但它没有给我任何有用的信息,只说明 “出现错误:[unknown filename]:[unknown lineno]:[unknown message]”
是否有任何阻止Viewport启动等待phonegap加载的原因? – 2012-02-01 15:23:09
视口包含依赖于PhoneGap API可用的代码,因此在加载PhoneGap之前它会被阻止。 – 2012-02-01 16:22:44
你总是可以延迟调用Ext.regApplication直到phonegap加载。这将避免这里需要的怪异启动逻辑。它可能会慢一点,但我怀疑慢了多少,特别是如果你已经包含了sencha-all。它可能不到10ms。 我在JS连接中玩了一段时间,并且在组合20个JS文件后只能保存<10ms,所以我不知道这样的性能优化有多少。 – 2012-02-02 01:29:34