Разработка мобильных
приложений на Qt
О себе
• Опыт работы программистом 15 лет • Разработка мобильных приложений 9 лет• Для мобильных платформ:
– Palm OS– Windows Mobile– Android
Чуть-чуть о личностях
• Хаавард Норд (Haavard Nord)основатель Qt
• Айрик Чеймб-Инг (Eirik Chambe-Eng) основатель Qt
• Маттиас Эттрич (Matthias Ettrich) основатель проекта KDE
• Богдан Ватра (Bogdan Vatra)энтузиаст портировавший Qt на android
Немного истории
• Начало разработки 1991 год• Средства Qt впервые стали известны общественности
в мае 1995 года как Qt 0.90 • 24 сентября 1996 года вышла версия Qt 1.0• В апреле 1997 была выпущена Qt 1.2 • Qt 2.0 была выпущена в июне 1999• В 2001 году вышла в свет Qt 3.0• Летом 2005 года была выпущена Qt 4.0• В декабре 2012 года была представлена Qt 5.0• Текущая версия Qt 5.2
Немного истории
Почему фреймворк назвали Qt?
Серп и молот рулит
Немного истории
Что в докладе про Qt делает ТРОЛЛЬ?
Трололо
Различия Qt c++ и standard с++
• Использование Meta Object Compiler
• Понятия SIGNAL и SLOT
Кроссплатформенность
• Qt для desktop: • Linux 32 и 64 бит• Windows 32 и 64 бит• Mac
• Qt для мобильных устройств • Android• iOs• Заявлена поддержка Qt на Windows RT с версии Qt 5.3
Пакеты разработки
Разработка мобильных приложений
• Qt 5.2.0 для Android под Windows 32-bit[http://qt-project.org/downloads]
• Android SDK Tools [http://developer.android.com/sdk/index.html]
• Android NDK [http://developer.android.com/tools/sdk/ndk/index.html]
• Apache Ant версии 1.8 или старше [http://ant.apache.org/bindownload.cgi]
• Java SE Development Kit (OpenJDK для Linux) [http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html]
• MinGW v4.8.0 (опционально) [http://www.mingw.org/]
• ADB драйвера для устройств
Разработка мобильных приложений
• Qt Creator• Qt Designer• Qt Linguist• Qt Assistant
Состав инструментария Qt
Qt + Java = JNI
• Java Native Interface (JNI)
Qt и аппаратная часть мобильных устройств под Android
Пример приложения
• Состав проекта
Пример приложения
• main.cpp
Пример приложения
• main.qml
Пример приложения
• bluetooth.h
Пример приложения
• bluetooth.cpp
Пример приложения
• androidbluetooth.cpp
Пример приложения
• btsample.java
Пример приложения
Windows Android
Захват с устройства
Быстродействие
• Анализ быстродействия(устройство Samsung Galaxy Ace s5830)
Запуск приложения: ~ 2.5 секОбъем приложения: 31 МБ
Вопросы
• Вы таки хотели у меня кое-что спросить?
Контакты
• Меня можно найти на:
– Skype: k.orel
– E-mail: [email protected]@gmail.com
Всем СПАСИБО!!!