Страница 1 из 1

Использование акселерометра на 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. Пишем код

Код: Выделить всё

import flash.sensors.Accelerometer;import flash.events.AccelerometerEvent; // создаем экземпляр Accelerometervar acc:Accelerometer = new Accelerometer();// вешаем слушатель на получение обновлений от датчика акселерометраacc.addEventListener(AccelerometerEvent.UPDATE, update);// обновление каждые 50 миллисекундacc.setRequestedUpdateInterval(50); function update(e:AccelerometerEvent):void{    // изменяем координаты мувиклипа    ball_mc.x += (e.accelerationX*50);    ball_mc.y -= (e.accelerationY*50);     // не позволяем мувиклипу boll_mc целиком выходить за пределы сцены    if (ball_mc.x < 0)    {        ball_mc.x = 0;    }    else if (ball_mc.x > stage.stageWidth)    {        ball_mc.x = stage.stageWidth;    }     if (ball_mc.y < 0)    {        ball_mc.y = 0;    }    else if (ball_mc.y > stage.stageHeight)    {        ball_mc.y = stage.stageHeight;    } } 

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


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

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


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

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

Изображение

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

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


Исходник https://flapps.ru/example/ios/iBall.rar

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

Добавлено: 10 ноя 2010, 00:15
Doker
отличный урок!

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

Добавлено: 10 ноя 2010, 16:18
revizor
это именно для продукции масов ??? на нокиа не пойдет ??? какой файл на выходе ???

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

Добавлено: 10 ноя 2010, 17:32
Александр
revizor
Для нокиа, наверно нужно при создании документа выбрать Flash Lite 4 (для новых телефонов). Файл в формате ipa не нужен. Простой экспорт swf должен подойти.
Если в телефоне есть акселерометр и поддержка флеша, то должно работать. Можно проверить поддержку

Код: Выделить всё

if (Accelerometer.isSupported){// действие, если подерживает}
или почитать описание модели nokia в интернете.

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

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