|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Nov 2010
Сообщений: 11
|
Длительная загрузка мобильного AIR приложения
Думаю, многие сталкивались с такой проблемой:
Запускаем AIR приложение на мобильном телефоне и видим черный экран некоторое время. Если приложение пустое (trace('hello world')), то инициализируется оно секунды 2-3. Мое же приложение имеет довольно весомый ассет (500 изображений, 400 звуков) и такие телефоны как HTC Sensation и Galaxy S+ стартуют его секунд 13-16 (в первый раз, потом быстрее). Начитавшись в интернетах я понял, что это время старта AIR Runtime. Под iOS я даже нашел, что можно указать в конфиге ссылку на сплеш-скрин (splashScreen.png), который операционная система покажет пользователю во время загрузки. Но я-то хочу под Android его запускать. Пытался сделать прелоадер через FrameFactory (такое решение нашел в интернетах) - нет. Тоже не помогло. Весь мой ассет замбеден в код, чтобы не грузить его лоадерами. Лоадерами грузить пробовал - тогда приложение стартует за 4-5 секунды, но при последовательной загрузке 4-ех ядерный HTC One X грузит все это 40 секунд, а при параллельной загрузке (в цикле) тот же самый 4-ех ядерный аппарат тупо вешается. Так же есть идея сделать Wrapper.swf, который является точкой входой в приложение. А потом он грузит в себя с помощью лоадера Main.swf. Но у меня пока не получилось из одного приложения запустить другое. Друзья, может кто-нибудь что-нибудь посоветует? |
|
|||||
Регистрация: Jun 2011
Сообщений: 212
|
Схема "загрузчик в первом кадре, остальное - во втором" нормально работает. Проверял на 600-мГц андроид-девайсе с 256 мб ОЗУ. Причем именно с сплеш-скрином (растровая картинка).
|
|
|||||
Регистрация: Nov 2010
Сообщений: 11
|
Во время черного экрана ни одна строчка кода не отрабатывает. А соответственно и прелоадер не стартует. Может это особенность устройства, не знаю..
|
|
|||||
Регистрация: Jun 2011
Сообщений: 212
|
1. Может что-то лишнее "затесалось" в первый кадр (тяжелый первый кадр).
2. Попробуйте разные AIR Runtime (Runtime в SDK отличается от Runtime в Play Market). 3. Может у вас скомпилирована debug-сборка приложения которая ждет подключения к отладчику. 4. Ну и "весомый ассет" лучше разделить (оставить в приложении ассеты "первой необходимости", а остальное подгружать). |
Часовой пояс GMT +4, время: 10:58. |
|
« Предыдущая тема | Следующая тема » |
|
|