220 likes | 360 Views
Mobile Application Development and Ubiquitous Interaction. Giulio Jacucci, Professor giulio.jacucci@tkk.fi +358 50 384 1535. http://users.tkk.fi/~giulio/Trial-lecture/mobile-lecture.htm. This Lecture:. Content Why and How Mobile Development Platform Selection Development process
E N D
Mobile Application Developmentand Ubiquitous Interaction Giulio Jacucci, Professor giulio.jacucci@tkk.fi +358 50 384 1535 http://users.tkk.fi/~giulio/Trial-lecture/mobile-lecture.htm
This Lecture: • Content • Why and How Mobile Development • Platform Selection • Development process • Emergent area: Ubiquitous interaction • Case studies • Aim • Get you convinced and providing basics: To get started developing!
Mobile? Application ? Development ? • Mobile • Refers to a mobile device as opposed to a stationary PC. While generally Laptop are not considered mobile current trends Netbooks might change this! • Application • an application is a computer program designed to help people perform a certain type of work. • Stand alone or distributed, Sandboxed, etc. • Development • refers to more than programming, design, technology selection , organisation of tools, testing, publishing…
Rapidly growing Apps • iPhone:Metro paris AR App • Android : Layar
Why • With manageable effort: • Have fun! • Learn to program • Have impact and get famous! • ContextCues / Jaiku / Google • Unprecedented opportunity • Since a decade mobile development has moved from Services to Applications giving more power to developers community
What’s so unique about mobile? • Opportunity to develop for ubiquitous interaction through • Sensors and Multimodality • Interaction with real world and other devices • However: • Difficulty in developing efficient, non-sandboxed mobile applications cross platform
Very quick history 1995 • Pocket PCs • C++ , J2ME • e.g. adding camera and GPS modules for barcode recognition and context awareness • Cell phones • WAP unusable, xhtml a bit better • Smartphones • J2ME, Symbian, • Python, Flash, Web technologies • Distributed applications 2005
Development Process • Design • Concept, interaction, graphics, user experience • Platform • Selection, Programs and Trusted Platforms, certificate signing • Programming • Language, tools, emulators • Testing • In particular in cross platform development! • Delivery • E.g. open source, App Store, Ovi Store etc.
Case CoMedia • Java 2 Micro Edition as a MIDlet + native Symbian application for collecting context information runs in the background and transmits data to the Milet via an XML stream.
Case Study: Atwink! • Anoto pen sends via bluetooth drawing to the mobile phone which has special-purpose software designed for receiving and transmitting the data. This client software has been written in Python and C++2, and supports S60 3rd Edition phones such as the Nokia N95
MapLens • Symbian OS S60 on Nokia N95 phones with camera and GPS. The paper map used with MapLens is an unmodified satellite image (with street overlay) from Google Maps • 3D tracking and image augmentation execute directly on the phone for minimal latency, the MapLens system relies on client/server architecture for storing and retrieving the media data (HTTP, ATOM)
Energy Life Web based 3D UI AJAX Full screen Touch Input • Detect client browser • Deliver adapted CSS, JavaScript and inclusion of tailored PHP files Application layer server • Browser independent CSS, JavaScript • Browser dependent CSS, JavaScript Circle-menu Client browser Main-menu cardmenu retrieve Authenticate Top-info retrieve browser applogin Security-manager • Calling service layer web services using JAX-WS with JSON bindings savingsUpdater adviceUpdater Retrieve/update retrieve XMLHttpRequest, name of callback function Service Layer web services quizUpdater retrieve Retrieve/update JSON object, as parameter in callback function retrieve
Examples from the Audience? • …… • Metro AR Paris • Layar on Android • Outlaw games (jailbroken )
Summary • Until now difficulty to develop non sandbox cross platform applications • Trends • Merging of Native and Web • Cross platform libraries e.g. QT • Ubiquitous Interaction • User experience expectation set high on playfulness, multimodality and ubiquitous use • Get started • Idea, team, platform, program, publish
Advertisement • Check out OtaSizzle! • Ossi • Pussi • http://otasizzle.wordpress.com/ • Professor Mark Billinghurst Augmented reality • 6 cr., in English only will be held on Tuesdays and Wednesdays at 16:15-18 in lecture hall T3 (T-building), beginning on November 3, 2009. • The number of active participants is limited • https://noppa.tkk.fi/noppa/kurssi/t-111.7590/etusivu • http://users.tkk.fi/~giulio/Trial-lecture/mobile-lecture.htm