08.12.2012 Views

Qtopia Phone Edition - Mobile Devices

Qtopia Phone Edition - Mobile Devices

Qtopia Phone Edition - Mobile Devices

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

2007 Aalborg University, <strong>Mobile</strong> Device Group<br />

<strong>Qtopia</strong> <strong>Phone</strong> <strong>Edition</strong> and<br />

<strong>Qtopia</strong> Greenphone<br />

<strong>Mobile</strong> <strong>Phone</strong> Programming http://mobiledevices.kom.aau.dk/


2007<br />

<strong>Mobile</strong> <strong>Phone</strong> Programming<br />

title<br />

<strong>Qtopia</strong><br />

Aalborg University, <strong>Mobile</strong> Device Group<br />

� <strong>Qtopia</strong> – application framework for Linux-based<br />

embedded devices<br />

� <strong>Qtopia</strong> is based on Qt 4 from Trolltech<br />

� Different versions for different purposes:<br />

– <strong>Qtopia</strong> Core – simple, single-purpose devices<br />

– <strong>Qtopia</strong> Platform – general, multi-application devices<br />

– <strong>Qtopia</strong> PDA <strong>Edition</strong> – for PDAs, includes applications<br />

– <strong>Qtopia</strong> <strong>Phone</strong> <strong>Edition</strong> – for mobile phones, includes<br />

applications<br />

http://mobiledevices.kom.aau.dk/


2007<br />

<strong>Mobile</strong> <strong>Phone</strong> Programming<br />

<strong>Qtopia</strong> Greenphone<br />

� Development platform for <strong>Qtopia</strong> <strong>Phone</strong> <strong>Edition</strong><br />

� Specifications<br />

– Touch-screen and keypad UI<br />

– QVGA LCD screen<br />

– Marvell PXA270 312MHz CPU<br />

– 64MB RAM + 128MB flash<br />

– Mini-SD card slot<br />

– Broadcom BCM2121 GSM/GPRS baseband<br />

processor<br />

– Tri-band GSM (900/1800/1900)<br />

– Bluetooth<br />

– Mini-USB<br />

– 1.3 Mpixel camera<br />

title<br />

Aalborg University, <strong>Mobile</strong> Device Group<br />

http://mobiledevices.kom.aau.dk/


2007<br />

<strong>Mobile</strong> <strong>Phone</strong> Programming<br />

<strong>Qtopia</strong> Greenphone<br />

title<br />

Aalborg University, <strong>Mobile</strong> Device Group<br />

� What can you do with <strong>Qtopia</strong> <strong>Phone</strong> <strong>Edition</strong>?<br />

– Easy GUI design through <strong>Qtopia</strong> widgets<br />

– Access phone functionality<br />

– Access built-in PIM functionality<br />

– Access networking functionality<br />

– Quickly get started building applications tapping<br />

into existing functionality<br />

http://mobiledevices.kom.aau.dk/


2007<br />

<strong>Mobile</strong> <strong>Phone</strong> Programming<br />

<strong>Qtopia</strong> <strong>Phone</strong> <strong>Edition</strong> - Services<br />

title<br />

Aalborg University, <strong>Mobile</strong> Device Group<br />

� <strong>Qtopia</strong> Application Services<br />

– Standardized APIs to access functionality<br />

supplied by other applications<br />

– Invoke a specific service<br />

– System integrator or user settings determine<br />

which application supplies it<br />

– Applications written to request services and/or<br />

serve requests through QCop<br />

– New services registered through system config<br />

files<br />

http://mobiledevices.kom.aau.dk/


2007<br />

<strong>Mobile</strong> <strong>Phone</strong> Programming<br />

<strong>Qtopia</strong> <strong>Phone</strong> <strong>Edition</strong> - Services<br />

� Pre-defined services<br />

title<br />

Aalborg University, <strong>Mobile</strong> Device Group<br />

– Clock, Date, Time, TimeMonitor, Alarm,<br />

Calendar, Tasks<br />

– Contacts, Contacts<strong>Phone</strong>, Dialer, Email, SMS,<br />

smsapp<br />

– VoiceRecording, PhotoEdit, WebAccess<br />

– Help, InputMethod, Launcher, Profiles, Push,<br />

QDL, <strong>Qtopia</strong>, ScreenSaver, Settings,<br />

SettingsManager, TaskManager<br />

http://mobiledevices.kom.aau.dk/


2007<br />

<strong>Mobile</strong> <strong>Phone</strong> Programming<br />

<strong>Qtopia</strong> <strong>Phone</strong> <strong>Edition</strong> – QCop<br />

title<br />

Aalborg University, <strong>Mobile</strong> Device Group<br />

� QCop is an inter-application messaging<br />

facility<br />

� Service requests – “QCopServiceRequest<br />

srv(servicename, action)”<br />

� Communication between specific applications<br />

via channels – “QPE/Application/appname”<br />

http://mobiledevices.kom.aau.dk/


2007<br />

<strong>Mobile</strong> <strong>Phone</strong> Programming<br />

<strong>Qtopia</strong> <strong>Phone</strong> <strong>Edition</strong> – QDL<br />

� <strong>Qtopia</strong> Data Linking – QDL<br />

title<br />

Aalborg University, <strong>Mobile</strong> Device Group<br />

– Link data items across applications within the <strong>Qtopia</strong><br />

application framework – a sort of hyperlinks<br />

– Example:<br />

A meeting item in the Calendar application may include<br />

links to persons in the Contacts application attending the<br />

meeting<br />

– Applications must be designed to provide QDL<br />

– Applications display links or allow the user to define/edit<br />

links using special text field<br />

http://mobiledevices.kom.aau.dk/


2007<br />

<strong>Mobile</strong> <strong>Phone</strong> Programming<br />

<strong>Qtopia</strong> <strong>Phone</strong> <strong>Edition</strong> - Plugins<br />

title<br />

Aalborg University, <strong>Mobile</strong> Device Group<br />

� Plugins provide functionality at another level<br />

than applications/services<br />

– High-level API for plugins that extend the <strong>Qtopia</strong><br />

framework itself<br />

� Written by extending base classes such as<br />

QImageIOPlugin, QScreenDriverPlugin etc.<br />

– Low-level API for plugins that extend <strong>Qtopia</strong><br />

applications<br />

� Applications must be written to detect and load plugins<br />

http://mobiledevices.kom.aau.dk/


2007<br />

<strong>Mobile</strong> <strong>Phone</strong> Programming<br />

<strong>Qtopia</strong> <strong>Phone</strong> <strong>Edition</strong> - Modules<br />

title<br />

Aalborg University, <strong>Mobile</strong> Device Group<br />

� Several modules support various functionality<br />

– Telephony<br />

� VoIP interface (developer has to add VoIP stack)<br />

� <strong>Phone</strong> library – call and SMS handling etc.<br />

� SIM Toolkit<br />

� Bluetooth support – BlueZ BT protocol stack<br />

(“technology preview”)<br />

� Over-the-air configuration<br />

� AT command handling<br />

http://mobiledevices.kom.aau.dk/


2007<br />

� Networking<br />

<strong>Mobile</strong> <strong>Phone</strong> Programming<br />

<strong>Qtopia</strong> <strong>Phone</strong> <strong>Edition</strong><br />

– Dialup plugin: PPP connections, GPRS<br />

title<br />

Aalborg University, <strong>Mobile</strong> Device Group<br />

– LAN plugin: LAN, WLAN (Greenphone no WLAN)<br />

– <strong>Qtopia</strong> networking API facilities (QtNetwork)<br />

� QFtp, QHttp<br />

� QtUdpSocket, QtTcpSocket, QTcpServer, QtSslSocket<br />

� QNetworkProxy<br />

http://mobiledevices.kom.aau.dk/


2007<br />

� Other application facilities<br />

– Safe execution environment<br />

<strong>Mobile</strong> <strong>Phone</strong> Programming<br />

<strong>Qtopia</strong> <strong>Phone</strong> <strong>Edition</strong><br />

title<br />

Aalborg University, <strong>Mobile</strong> Device Group<br />

� Public Key Infrastructure to determine trusted<br />

applications<br />

� Sand-box environment to control system access for<br />

applications<br />

– Java<br />

� Java support as well for wider compatibility<br />

http://mobiledevices.kom.aau.dk/


2007<br />

<strong>Mobile</strong> <strong>Phone</strong> Programming<br />

<strong>Qtopia</strong> Greenphone SDK<br />

title<br />

Aalborg University, <strong>Mobile</strong> Device Group<br />

� The SDK is a complete Linux system<br />

containing all necessary tools running as<br />

VMware<br />

� Fully set-up environment ready for developing<br />

applications for the Greenphone<br />

� Use Greenphone emulator or connect real<br />

phone<br />

� Run under either Windows or Linux<br />

http://mobiledevices.kom.aau.dk/


2007<br />

� Greenphone SDK pricing<br />

<strong>Mobile</strong> <strong>Phone</strong> Programming<br />

<strong>Qtopia</strong> Greenphone SDK<br />

– Community SDK (GPL 2): Free<br />

title<br />

Aalborg University, <strong>Mobile</strong> Device Group<br />

– Light (commercial distribution, 1 device per<br />

license): $195<br />

– Professional (full source, Trolltech support,<br />

additional devices): Custom price<br />

� <strong>Qtopia</strong> Greenphone $695<br />

http://mobiledevices.kom.aau.dk/


2007<br />

<strong>Mobile</strong> <strong>Phone</strong> Programming<br />

<strong>Qtopia</strong> Greenphone<br />

� Promising<br />

– Easy to get started with<br />

– Qt widgets well documented<br />

� A lot missing<br />

– Documentation<br />

– Stability<br />

– Community<br />

� Too expensive<br />

– Not enough open-source developers will buy one<br />

– Prohibits Linux-style development<br />

title<br />

Aalborg University, <strong>Mobile</strong> Device Group<br />

http://mobiledevices.kom.aau.dk/

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!