Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Помогите создать сплэш скрин для Андроид! (http://www.flasher.ru/forum/showthread.php?t=209472)

Capnmeth 13.11.2014 17:47

Помогите создать сплэш скрин для Андроид!
 
Я прочитал целый инет некакой инфы не нашел. Пару статьей было насчет adobe flex тоесть можно создать сплэш скрин только с помошью флэкс. Некакие прелоадеры не работают.. Приложение на мобиле загружаеться довольно долго примерно за 20 секунд где то или даже больше, за это время пользователь подумает что приложение просто глючануло, и вобще удалит ее не включив ее. Мне обязательно нужно сделать сплэш скрин что бы пользователь хоть знал что приложение подгружается.. Насчет Adobe Flex я понятие не имею как с ним работать у меня есть swf, там как я знаю нужно прописывать в xml что бы был сплеш скрин а потом как там внедрить мой ролик не знаю. Помогите как нибудь решить эту проблему. Заранее спасибо и простите за граматические ошибки..

illuzor 13.11.2014 17:54

Делайте дополнительный swf-загрузчик и в него уже грузите основной swf.
В загрузчике можете показывать что угодно, правда анимации будут тормозить.

gloomyBrain 13.11.2014 17:58

Часто для реализации splash screen делают embed картинке, которую нужно отобразить. После чего делают 2-кадровую флешку, в которой в первом кадре есть только картинка и код для ее показа, а во втором кадре - все остальные ресурсы и весь остальной код.
Однако, это не единственный способ. Можно (и мне такой путь кажется куда более удобным и перспективным) сделать 2 и более swf-файлов и включить их в приложение. Посмотрите вот здесь как это реализуется на примере iOS. Для Android это тоже работает.
То есть смотрите что можно сделать:
- делаем легонький прелоадер, который всего-то и умеет что показывать картинку и загружать основное приложение
- делаем картинку (либо embed, либо включаем ее в ресурсы приложения)
- делаем отдельную swf с кодом и, возможно, ресурсами (хотя я бы все ресурсы держал отдельно конечно и "подтягивал" во время исполнения)
- на старте приложения запускаетс наш "легкий" прелоадер
- прелоадер первым делом показывает картинку, а потом начинает загружать большую swf-ку с диска (так как она есть в ресурсах)
- как только все загружено, скрываем картинку и показываем основную swf-ку

Zebestov 13.11.2014 18:06

А разве 2 swf допустимо? Что там с "исполняемым контентом" на iOS и Android?

Capnmeth 13.11.2014 18:09

Цитата:

Сообщение от gloomyBrain (Сообщение 1174915)
Часто для реализации splash screen делают embed картинке, которую нужно отобразить. После чего делают 2-кадровую флешку, в которой в первом кадре есть только картинка и код для ее показа, а во втором кадре - все остальные ресурсы и весь остальной код.
Однако, это не единственный способ. Можно (и мне такой путь кажется куда более удобным и перспективным) сделать 2 и более swf-файлов и включить их в приложение. Посмотрите вот здесь как это реализуется на примере iOS. Для Android это тоже работает.
То есть смотрите что можно сделать:
- делаем легонький прелоадер, который всего-то и умеет что показывать картинку и загружать основное приложение
- делаем картинку (либо embed, либо включаем ее в ресурсы приложения)
- делаем отдельную swf с кодом и, возможно, ресурсами (хотя я бы все ресурсы держал отдельно конечно и "подтягивал" во время исполнения)
- на старте приложения запускаетс наш "легкий" прелоадер
- прелоадер первым делом показывает картинку, а потом начинает загружать большую swf-ку с диска (так как она есть в ресурсах)
- как только все загружено, скрываем картинку и показываем основную swf-ку

типо так ? loader.fla
Код AS3:

import flash.display.Loader;
import flash.events.Event;
import flash.events.ProgressEvent;
import flash.display.MovieClip;
var loader:Loader = new Loader();       
var progresser:MovieClip = new Progresser();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgress);
 
loader.load(new URLRequest("index.swf"));       
addChild(progresser);
progresser.x = stage.stageWidth/2;
progresser.y = stage.stageHeight/2;
 
function onComplete(e:Event):void{
        trace('Load complete');
        addChild(loader);
        removeChild(progresser);
        }
function onProgress(e:ProgressEvent):void {
        trace(e.target.bytesLoaded);
        progresser.scaleX = e.bytesLoaded / e.bytesTotal;
        }

делаю один легкий swf а большой который и есть главный но при компиляции в apk он компилирует только вот этот фаил который подгружает а не оба тоесть этим путем у меня не работает..

Добавлено через 1 минуту
ребята помогите очень нужно без этого некак..

illuzor 13.11.2014 18:13

Цитата:

А разве 2 swf допустимо? Что там с "исполняемым контентом" на iOS и Android?
Исполняемый код нельзя грузить извне.

Capnmeth, пробуйте паковать вручную через adt.

Capnmeth 13.11.2014 18:15

Цитата:

Сообщение от illuzor (Сообщение 1174919)
Исполняемый код нельзя грузить извне.

Capnmeth, пробуйте паковать вручную через adt.

и этим что думаете сработает?

illuzor 13.11.2014 18:20

Capnmeth вы, видимо, пакуете через flash professional. (я понятия не имею, как он с air работает).
Например, flash develop пакует в apk всё, что лежит в папке bin.
В вашем случае проще будет вручную через adt запаковать.

gloomyBrain 13.11.2014 18:23

Цитата:

Сообщение от Zebestov (Сообщение 1174916)
А разве 2 swf допустимо? Что там с "исполняемым контентом" на iOS и Android?

По ссылочке говорят что можно. Ибо для iOS все приложенные swf так же проходят этап компиляции AOT.

Их можно тупо через Loader грузить из папки с ресурсами, главное домен указать. Ну да что я буду рассказывать, все написано по ссылке.


Часовой пояс GMT +4, время: 05:08.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.