在Android设备或模拟器上查看时,Sencha touch app仍保留在蓝色加载屏幕上

时间:2013-10-12 22:00:50

标签: extjs cordova sencha-touch phonegap-build

我刚刚通过

创建了一个基本的sencha应用程序
sencha generate app --name AndroidDemo --path ../demo

我在浏览器中查看它,一切都很完美。 然后我按照这里的说明进行操作:http://www.sencha.com/blog/android-setup-for-sencha-touch/

并使用Sencha Cmd编译应用程序,当模拟器打开时,我只得到一个蓝色加载屏幕。

我还尝试在phonegap构建网站上使用phonegap编译/构建应用程序,并且构建成功完成,并且在我的andoid设备中加载应用程序之后,再次我只看到加载页面并且它停留在此页面上并且应用程序不会发射。

我完全无能为力。需要你的帮助朋友。

谢谢,

enter image description here

3 个答案:

答案 0 :(得分:0)

在您的应用中,代码可能是较差的语法错误或其他错误,因此当应用在模拟器中运行时,请检查 log cat 或其他选项运行或Chrome中的应用并检查控制台日志 。因为加载屏幕显示错误的情况作为我的表达与此。

答案 1 :(得分:0)

我有完全相同的问题.. (目前在Windows上,顺便说一句)

虽然它不完全是一个解决方案, 我做的一个解决方法(出于绝望,在模拟器上看到我的应用程序的其余部分): 是使用“adb”命令将其直接安装到模拟器。

没有在Mac上试过这个,但我猜这几乎是一回事?

  1. 使用“sencha”cmd构建应用程序后,打开构建目录的cmd / terminal。 - 假设您没有更改输出位置,将在您的。中创建apk 此文件夹下的项目根文件夹:
    “建\天然封装的移动\ MYAPPNAME \ packager.json \”

  2. 确保模拟器已在运行

  3. 在apk所在的文件夹中运行以下命令/终端:

  4. adb install -r MYAPPNAME.apk

    1. 等待一段时间,应该说成功安装了。 在模拟器中运行应用程序,希望它将超出加载屏幕。
    2. 我不知道为什么会出现这个问题。 (昨天才开始修补android dev / sencha,它似乎正在竭尽所能阻止我运行我的应用程序。哈哈)

      如果您找到正确的解决方法,请分享:)

答案 2 :(得分:0)

这通常在您构建版本时发生,并且您没有嵌入所有需要的组件。

例如,当您使用...

Ext.Image

...在您的代码中。

在没有......的情况下跑步。

Sencha app build xxx

... Sencha将从touch / src组件文件夹中获取组件。

但是当你构建应用程序时,它不能再引用该文件夹而且Sencha会停止。

请打开控制台并注意这样的警告:

[WARN][Anonymous] [Ext.Loader] Synchronously loading 'Ext.MessageBox';
consider adding 'Ext.MessageBox' explicitly as a require of the 
corresponding class

您需要将这些添加到App.js的requires部分或使用该项目的类(此处为Ext.Messagebox)。

找出正在发生的事情的另一种方法是在浏览器中运行构建代码并查看控制台(因此,而不是localhost / myapp / index.html,您运行localhost / myapp / build / {package} / {myapp } /index.html)。

还有另一件事可能发生。这是异步操作的范围。 像这样:

 Ext.defer(function() {this.log(‘all good’);}, 500);

这不是你班级的范围。 你需要使用:

Ext.defer(function() {this.log(‘all good’);}, 500, this);

或者您甚至可以使用......

Ext.bind()

...将范围绑定到函数。