2

我能够在 Android Emulator 3.1 上使用 Phonegap 运行 Sencha Touch 应用程序。

但是,当涉及到 Android 平板电脑(三星 Galaxy,3.1)时,它无法加载应用程序。它在访问由 sencha 为 Store、Model、View 和 Controller 生成的 *.js 文件时出现错误。

错误是:

Failed loading 'app/store/xyz.js', please verify that the file exists
 Uncaught Error: [Ext.Loader] Failed loading 'app/store/xyz.js', please verify that the file exists at file:///android_asset/www/sencha-touch-all-debug.js:8010

我正在使用 Sencha Touch 2.0.0 和 PhoneGap 1.7.0。

4

1 回答 1

4

Android v3.x 及更高版本上的 Webview 无法加载带参数的本地文件,请参阅问题#17535了解详细信息,但简而言之,这将不起作用:

<a href="file:///android_assets/test.html?para=one>test</a>

这个问题的严重后果是 Sencha Touch 2 和特别是Ext.LoaderExt.Ajax类无法加载 javascript 依赖项,因为每个 javascript 文件都添加了额外的 'timestamp' 参数(请参阅disableCachingParam)。

要解决此问题,您需要禁用“disableCaching”选项:

Ext.Loader.setConfig({ enabled: true, disableCaching: false });
Ext.Ajax.setDisableCaching(false);

另请参阅错误#TOUCH-1463

于 2012-05-06T12:04:34.093 回答