Использование акселерометра на iOS (Adobe Flash CS5)

Создание приложений для iOS, Android, Bada, Blackberry, Symbian, S40 и т.п.
Flash, Java, Objective-C и т.п.

Использование акселерометра на iOS (Adobe Flash CS5)

Сообщение Александр » 09 ноя 2010, 23:45

Использование акселерометра на iOS (Adobe Flash CS5)
Flash CS5, ActionScript 3.0, iOS, iPhone, iPod, iPad, Акселерометр

В этом уроке вы узнаете как использовать акселерометр в устройствах iPhone, iPod, iPad в своих флеш приложениях.

Понадобиться Adobe Flash CS5 и устройство с jailbreak, для тестирования приложения.

Если вы впервые создаёте приложение для iOS на флеше, то начните с урока Создание флеш приложения для iPhone, iPod, iPad (Flash CS5). В нём подробно описаны все этапы. В этом уроке эти этапы описаны не будут.




1. Запускаем Adobe Flash CS5 и создаём Новый документ.
Выбираем iPhone OS.


2. Заполняем сцену
Рисуем круг или любую другую фигуру.
Конвертируем в мувиклип:
- выделяем
- нажимаем правую кнопку мыши
- Convert To Symbol...

Изображение
Name - любое, например Ball
Type - Movie Clip
Registration: по центру.
- OK

Называем созданный MovieClip - ball_mc

Можете изменить фон сцены, кликнув по прямоугольнику рядом с Stage, на панели PROPERTIES.

Изображение


3. Пишем код
  1. import flash.sensors.Accelerometer;
  2. import flash.events.AccelerometerEvent;
  3.  
  4. // создаем экземпляр Accelerometer
  5. var acc:Accelerometer = new Accelerometer();
  6. // вешаем слушатель на получение обновлений от датчика акселерометра
  7. acc.addEventListener(AccelerometerEvent.UPDATE, update);
  8. // обновление каждые 50 миллисекунд
  9. acc.setRequestedUpdateInterval(50);
  10.  
  11. function update(e:AccelerometerEvent):void
  12. {
  13.     // изменяем координаты мувиклипа
  14.     ball_mc.x += (e.accelerationX*50);
  15.     ball_mc.y -= (e.accelerationY*50);
  16.  
  17.     // не позволяем мувиклипу boll_mc целиком выходить за пределы сцены
  18.     if (ball_mc.x < 0)
  19.     {
  20.         ball_mc.x = 0;
  21.     }
  22.     else if (ball_mc.x > stage.stageWidth)
  23.     {
  24.         ball_mc.x = stage.stageWidth;
  25.     }
  26.  
  27.     if (ball_mc.y < 0)
  28.     {
  29.         ball_mc.y = 0;
  30.     }
  31.     else if (ball_mc.y > stage.stageHeight)
  32.     {
  33.         ball_mc.y = stage.stageHeight;
  34.     }
  35.  
  36. }
  37.  



4. Нажимаем Ctrl + Enter, чтобы протестировать приложение
Если ошибок нет и вы видите нарисованную фигуру на сцене, то можно создавать ipa файл, для установки на устройство.


5. Создаём ipa файл
Сохраняем fla файл в какую-нибудь папку.
Затем File -> Publish
Используем сертификат из урока о котором я писал в начале topic1655.html
Все поля заполняем так же.

Нажимаем Publish и ждём сообщения "iPhone file has been created"


6. Устанавливаем приложение в устройство
Берём из папки с fla *.ipa файл и устанавливаем в наше устройство.

После установки, можно протестировать приложение.

Изображение

Изображение
Акселерометр работает!

Только на ретина дисплее у круга заметны нечеткие границы.
Изображение


Исходник Чтобы увидеть ссылку - зарегистрируйтесь

За это сообщение автора Александр поблагодарили - 2:
Doker, Noise Gate
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
 
Автор темы
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45
Откуда: Санкт-Петербург
Благодарил (а): 126 раз.
Поблагодарили: 771 раз.

Чтобы убрать блок с рекламой, зарегистрируйтесь на форуме или войдите.

Google
 



Re: Использование акселерометра на iOS (Adobe Flash CS5)

Сообщение Doker » 10 ноя 2010, 00:15

отличный урок!
my icq numbers: 403305362 и 484613
Аватара пользователя
Doker
Модератор
Модератор
 
Сообщения: 1026
Зарегистрирован: 07 май 2010, 18:53
Благодарил (а): 35 раз.
Поблагодарили: 52 раз.

Re: Использование акселерометра на iOS (Adobe Flash CS5)

Сообщение revizor » 10 ноя 2010, 16:18

это именно для продукции масов ??? на нокиа не пойдет ??? какой файл на выходе ???
Аватара пользователя
revizor
FL Team
FL Team
 
Сообщения: 1034
Зарегистрирован: 18 ноя 2009, 20:22
Благодарил (а): 6 раз.
Поблагодарили: 49 раз.

Re: Использование акселерометра на iOS (Adobe Flash CS5)

Сообщение Александр » 10 ноя 2010, 17:32

revizor
Для нокиа, наверно нужно при создании документа выбрать Flash Lite 4 (для новых телефонов). Файл в формате ipa не нужен. Простой экспорт swf должен подойти.
Если в телефоне есть акселерометр и поддержка флеша, то должно работать. Можно проверить поддержку
  1. if (Accelerometer.isSupported){
  2. // действие, если подерживает
  3. }

или почитать описание модели nokia в интернете.
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
 
Автор темы
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45
Откуда: Санкт-Петербург
Благодарил (а): 126 раз.
Поблагодарили: 771 раз.

Re: Использование акселерометра на iOS (Adobe Flash CS5)

Сообщение Hudson » 13 янв 2012, 14:35

Вопрос, заметные дергания на Iphone 3gs как убрать?
При движении шарика видно дергания как будто фпс проседает или не тянет проц.
Hudson

 
Сообщения: 8
Зарегистрирован: 26 июл 2011, 09:40
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.


Вернуться в Уроки по созданию приложений для мобильных устройств



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

cron