Download presentation
Presentation is loading. Please wait.
1
Qt for Android (and Symbian)
Tam Hanna @tamhanna
2
About /me Tam HANNA CEO, Tamoggemon Ltd.
Runs web sites about mobile computing Writes scientific books
3
Overview Qt for Android (focus) Qt for Wrap-up Symbian MeeGo TiZen
webOS Wrap-up
4
What is Android
5
Largest mobile OS by share
Data: IDC 2012, Market Share Q3
6
Android is open Runs ANY app No permission model If user enables it
app stores No permission model User is NOT root
7
Android is Java Apps run in special VM called DALVIK
Pretty high performance But: NDK is available Allows use of C++ code
8
Android is „fragmented“
Many vendors Different form factors Many stores Many back-ends Analyst buzzword Low practical relevance – like PalmOS
9
Qt for Android
10
Community-driven port
Started by Bogdan Vatra 2011 „Aquired“ by KDE Provides server infrastructure, etc No support from Nokia Digia mentioned in press release
12
LightHouse
13
Getting started
14
Supported platforms Linux (Ubuntu 10.4 +) Mac OS Windows
Speaker recommends: Linux
15
Getting started Install Ant 1.8 and OpenJDK sudo apt-get install ant
sudo apt-get install openjdk-6-jdk
16
Graphical set-up chmod +x linux-online-necessitas-alpha4.1-sdk-installer sudo ./linux-online-necessitas-alpha4.1-sdk-installer
17
Automatic deployment Tool fetches SDK „One Click Install“
18
Starting Necessitas tamhan@ubuntu:~$ cd NecessitasQtSDK/
cd QtCreator/ cd bin sudo ./necessitas
19
Internal architecture
20
Library versioning Qt is updated frequently Qt is large Legal reasons
Downward compatibility is pretty good Qt is large 7MB binary, or more Memory is limited
21
Solution: Ministro Sits in app stores
Auto-downloads libraries to device
22
Overview
23
GUI sniffing
24
GUI sniffing - II
25
Input
27
Project-speficic settings
28
Configure baseline
29
Application optics
30
Permissions
31
Permissions - II Signify what app does Help user decide
32
Libraries
33
Signing
34
Signing - II Android Signing verifies producer
This binary is from workstation A NO rights / trust transfer except for update
35
Library management
36
Porting gotchas
37
Definitions
38
File includes All include paths are based on /.pro
39
Includes #include <qDebug> #include <QDebug>
40
gcc gotchas
41
Specific eekers Native code bits? Platform-specific files
.pro.user files Soft keys?
43
Why develop for Symbian
Symbian is DEAD But: devices still in circulation Top especially in Latin America
44
Development options Carbide Qt Creator Eclipse-based Mature IDE
Limited to 4.6.3 Can not debug well Qt Creator Decent integration Debugs well Qt SDK auto-deploys toolkit
45
Ovi Store - I Ovi Store can drive huge volume
1 million downloads => no issue VERY low conversion rates 1:1000 or less
46
Ovi Store - II Limited device reach for Qt content
Not every Qt-capable device is enabled Forget Ovi for China 3 cents / Dollar
47
Ovi Store - III DL/t for game
48
Ovi Store - III DL/t for app
49
MeeGo
50
Dead platform N900 and N9 sold decently well
Few thousand technically savvy users Jolla plans Chinese device But: good tooling
51
TiZen
52
What is it?
53
Will it be in v1? SDK for V1 is said to be web-only
However, Qt is used internally C/C++ runtime might be around (bada)
54
webOS
55
Why develop for it? Not dead yet Unofficial Qt port
GRAM Cooperation with LG planned Unofficial Qt port
56
Conclusion
57
Mobile is fragmented Multiple platforms C++ is common base line
Battle for mindshare and Winner is yet undecided C++ is common base line C++ is everywhere Even on iOS and Windows Phone 8
58
Mindshare is everything
59
Qt saves time Develop once, deploy multiple times
Increase mindshare Increase market presence More revenue Worst case: redo GUI with QML
60
?!? - !?! tamhan@tamoggemon.com @tamhanna
Pictures from : Thanks ! ?!? - !?! @tamhanna
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.