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

Создание приложений для iOS, Android.
Java, Swift, Objective-C, Kotlin и т.п.
Ответить
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

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

Сообщение Александр »

Использование акселерометра на 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
Аватара пользователя
Doker
Модератор
Модератор
Сообщения: 1026
Зарегистрирован: 07 май 2010, 18:53

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

Сообщение Doker »

отличный урок!
Аватара пользователя
revizor
FL Team
FL Team
Сообщения: 1034
Зарегистрирован: 18 ноя 2009, 20:22

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

Сообщение revizor »

это именно для продукции масов ??? на нокиа не пойдет ??? какой файл на выходе ???
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

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

Сообщение Александр »

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

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

if (Accelerometer.isSupported){// действие, если подерживает}
или почитать описание модели nokia в интернете.
Hudson
Сообщения: 8
Зарегистрирован: 26 июл 2011, 09:40

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

Сообщение Hudson »

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