2013-10-12 1 views
4

я только что создал основное приложение Сенча поСенча сенсорный приложение остается на синем экране загрузки при просмотре на Android устройстве или эмуляторе

sencha generate app --name AndroidDemo --path ../demo 

и я рассматривал его в браузере и все идеально. Затем я следил за инструкциями: http://www.sencha.com/blog/android-setup-for-sencha-touch/

и скомпилировал приложение с Sencha Cmd и когда открывается эмулятор, я получаю только синий экран загрузки.

Я также попытался скомпилировать/создать приложение с помощью телефонной закладки на сайте сборки phonegap, и сборка завершается успешно и после загрузки приложения на моем устройстве andoid снова я вижу только страницу загрузки, и она остается на этой странице, и приложение не запускается.

Я совершенно не знаю. Нужна ваша помощь друзьям.

Спасибо,

enter image description here

+0

В моем случае мне пришлось удалить cordova.js из app.json, и это сработало, но казалось, что сломал и кордову. Я изменю положение кордовы в app.json и посмотрю, что произойдет. – Neutralizer

ответ

0

В код приложения может быть шахтером ошибка синтаксиса или другая ошибка, так в то время как приложение запустить в чеке эмулятора журнала кошки или другой вариант запуска или приложение в хроме и проверить консоль log. Потому что загрузка экрана отображается в случае ошибки как мое выражение с этим.

+0

Ошибок нет. Как я уже сказал, я даже попробовал базовое примерное приложение, которое генерируется приложением sencha generate. –

0

я имею точно такую ​​же проблему .. (в настоящее время на окнах, кстати)

, а это не совсем решение, обходного пути, что я сделал (от отчаяния, чтобы увидеть остальную часть моего приложения на эмуляторе): - это просто установить его непосредственно в эмулятор, используя команду «adb».

не пробовал это на mac, но я предполагаю, что это почти то же самое?

  1. после создания приложения с использованием команды «sencha» cmd, откройте cmd/terminal в каталог сборки. -assuming ты не изменили место выхода, то APK будет создан в корневой папке проекта в этой папке:
    «построить \ нативный-пакет-мобильного \ MYAPPNAME \ packager.json \»

  2. делает убедитесь, что эмулятор уже работает

  3. выполнить следующую команду в/терминал в папке, где находится APK:

ADB установки -r MYAPPNAME.apk

  1. подождите некоторое время, и он должен сказать, что он успешно установлен. запустите приложение в эмуляторе и, надеюсь, оно выйдет за пределы экрана загрузки.

Я не знаю, почему эта проблема происходит. (только вчера начал разбираться с Android-разработчиком/sencha, и, похоже, он делает все возможное, чтобы предотвратить запуск моего приложения.ха-ха)

пожалуйста, поделитесь, если вы найдете правильный фикс для этого :)

0

Это обычно происходит, когда вы строите свою версию, и вы не вложите все необходимые компоненты.

Например, при использовании ...

Ext.Image 

... в вашем коде.

Во время работы без ...

Sencha app build xxx 

... Сенч будет захватывать компонент из папки нажмите/SRC компонентов.

Но в то время, когда вы создаете приложение, оно больше не может ссылаться на эту папку, и Sencha будет остановлен.

Пожалуйста, откройте консоль и обратите внимание на предупреждение, как это:

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

Вам нужно добавить их в секцию либо App.js или класса, где используется элемент (здесь Ext требуется. Окно сообщения).

Другой способ узнать, что происходит, - запустить код сборки внутри браузера и заглянуть в консоль (поэтому вместо 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() 

... связать сферу функции.