2012-03-21 2 views
1

Я разрабатываю сайт с полной Flash (Player 10.2).Как узнать, работает ли Flash AS3 на рабочем столе или в мобильном браузере

Мне нужно знать во время выполнения, если код запущен на компьютере для настольных компьютеров или мыши или мобильном/сенсорном устройстве, чтобы я мог различать механизм ввода.

Это возможно любым способом?

+0

Почему? Разве входы все еще не считаются событиями щелчка? –

+0

Нет, для рабочего стола я также использую «MOUSE_MOVE» таким образом, чтобы его нельзя было использовать с «сенсорным» вводом. Когда я перемещаю мышь влево, экран прокручивается влево и наоборот ... –

+0

См. Также [Как определить, работает ли приложение в качестве приложения для мобильных или настольных приложений?] (Http: // stackoverflow. com/questions/8404071/how-to-define-if-an-application-is-running-as-a-mobile-or-desktop-air-applica/10523385 # 10523385) на этом сайте – User5910

ответ

2

Как выглядит flash.system.Capabilities.version?

+0

Это лучше, я полагаю. В любом случае, для моего случая , Я думаю, что у меня получится «Capabilities.touchscreenType». –

+0

Это не имеет никакого смысла. Windows 7 изначально поддерживает мультитач-входные мониторы, поэтому вы можете придумать «сенсорный экран» даже на настольном компьютере. User1113426 точно ответил на ваш вопрос. –

+0

Почему нет «Android» в качестве возвращаемого значения ... или есть ?! http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/system /Capabilities.html#os –

3

Используйте flash.system.Capabilities.os для проверки.

+0

Хм, он никогда не возвращается " Android "как ОС! Может быть, я должен проверить свойство «.cpuArchitecture» и посмотреть, вернет ли он «ARM»? Это тоже неточно ... :-( –

+0

Он дал вам ответ. Вы проверяете наличие ОС. Он расскажет вам, является ли это Android, ios, windows и т. Д. –

1

Для AIR 3.9: Capabilities.manufacturer возвращает «Adobe iOS» на ipad2, «Android Linux» на Galaxy s4. Capabilities.version возвращает «IOS 11,9,900,117» на ipad2 и «AND 11,9,900,117» на Galaxy s4.

1

Вы можете проверить, поддерживает ли устройство акселерометр. Если это так, вы знаете, что это мобильное устройство. Я не знаю точно, что именно вы хотели бы сделать, поэтому я не знаю, будет ли это хорошо работать для вашего проекта. Тем не менее, это будет отличать мобильные устройства от настольных компьютеров.

if(Accelerometer.isSupported){ 
    //mobile device 
    //os still unknown 
else{ 
    //desktop or laptop 
    //os still unknown 
} 
Смежные вопросы