Presentation on theme: "Lecture 1 IntroductionProgramming Handheld and Mobile devices 1 Programming of Handheld and Mobile Devices Lecture 1 Course structure and introduction."— Presentation transcript:
Lecture 1 IntroductionProgramming Handheld and Mobile devices 1 Programming of Handheld and Mobile Devices Lecture 1 Course structure and introduction Rob Pooley firstname.lastname@example.org
Lecture 1 IntroductionProgramming Handheld and Mobile devices 2 Lecture and lab schedule - provisional Lectures –Week 1 1 Introduction and course outline What is a MID 2 Notion of event driven programming.Palm OS concepts and example –Week 2 3 Palm OS programming. Palm OS resources and the SDK 4 OXO example for Palm OS. Palm OS comms. Palm OS summary. Labs –Week 1No lab Week 2 Introduction to Palm OS Week 3 Further Palm OS example
Lecture 1 IntroductionProgramming Handheld and Mobile devices 3 Assessment There is an examination at the end of the module There are two practical assignments for all students There is a further practical assignment for MSc students The practical assignments will be handed out in week one and must be completed as follows: 1.Completed by 5.00pm of Friday of week 4 –Demonstrated in Week 5 lab session 2.Completed by 5.00pm of Friday of week 8 –Demonstrated in Week 9 lab session 3.Completed by 5.00pm of Friday of week 10 –Demonstrated in Week 11 lab session –You must hand in and demonstrate the coursework assignments to be allowed to sit the exam
Lecture 1 IntroductionProgramming Handheld and Mobile devices 4 Resources This is a practically based course; it is expected that you will experiment with the techniques that you are shown There is a lab in which you will have priority access to PCs and supported sessions will operate for these These machines will have the software required for the various stages of the course installed The software will include emulators for you to test your code There are also a number of PDAs which you can use, having deposited your matriculation card with Adrian first
Lecture 1 IntroductionProgramming Handheld and Mobile devices 5 Notes and other information There is a Web page with links to all –Notes, posted after the lecture –Assignments –Documentation Handouts will be provided with the slides and notes at the lecture which they cover. Help will be available in labs 1.53 and 1.54 at the following times for you to ask questions about how to use the development environments provided and to have your coursework ticked off –Mondays at 10.15 and 12.15
Lecture 1 IntroductionProgramming Handheld and Mobile devices 6 Mobile information devices The emergence of genuinely portable devices which contain sufficient computing power to support a range of applications, many of which were originally developed for conventional personal computers, is one of the major changes in the world of technology in recent years. It has accompanied the emergence of very widespread adoption of mobile phones and these technologies are now merging, creating mobile information devices (MIDs) with the ability to connect with each other and with conventional computer networks
Lecture 1 IntroductionProgramming Handheld and Mobile devices 7 Whats special about MIDs? SWOT 1.Strengths 1.They are small 2.They are popular 3.They are connectable 2.Weaknesses 1.They have limited memory – a challenge 2.They often have limited battery life 3.They have limited processing power 3.Opportunities 1.They are flexible 2.They are becoming more connectable 3.They integrate with mobile phones 4.Threats 1.There is lots of competition 2.They are expensive 3.There is no standard operating system 4.They are not flexible enough
Lecture 1 IntroductionProgramming Handheld and Mobile devices 8 What is a MID?
Lecture 1 IntroductionProgramming Handheld and Mobile devices 9 Mobile information devices most people probably think of portable devices as intelligent phones or personal digital assistants (PDAs), the distinction is arbitrary. For the purposes of this course we will use the term MID to include any handheld device which has some form of micro-processor in it and which can have new applications loaded onto it.
Lecture 1 IntroductionProgramming Handheld and Mobile devices 10 Connecting to MIDs MIDs are equipped with a range of communication devices. Mobile phone technology provides access to the telephone network, most will alsohave one or more of the following: USB MID to computer, infra red line of sight device to device, Bluetooth wireless device to device WiFi wireless device to network.
Lecture 1 IntroductionProgramming Handheld and Mobile devices 11 Connecting to a MID Infra red USB WiFi Bluetooth
Lecture 1 IntroductionProgramming Handheld and Mobile devices 12 Operating environments Palm OS J2ME Other Java environments.Net Compact Symbian Linux
Lecture 1 IntroductionProgramming Handheld and Mobile devices 13 Languages C/C++ –Palm OS –Symbian –.NET –Linux Java –J2ME –Other Java environments C# –.NET Visual Basic –.NET Python scripting –Some mobile phones Mobile scripting languages –Many mobile phones
Lecture 1 IntroductionProgramming Handheld and Mobile devices 14 Issues to bear in mind Screen Size –Most Palm Powered handheld screens are only 160x160 pixels, so the amount of information you can display at one time is limited. Quick Turnaround Expected –On a PC, users dont mind waiting a few seconds while an application loads because they plan to use the application for an extended amount of time. By contrast, the average handheld user uses a handheld application 15 to 20 times per day for much briefer periods of time, usually just a few seconds.
Lecture 1 IntroductionProgramming Handheld and Mobile devices 15 More issues to bear in mind PC Connectivity –PC connectivity is an integral component of the Palm Powered handheld. The handheld comes with a cradle that connects to a desktop PC and with software for the PC that provides one button backup and synchronization of all data on the handheld with the users PC. Input Methods –Most users of Palm Powered handhelds dont have a keyboard or mouse. Users enter data into the handheld using a pen. They can either write characters in the input area or use the keyboard dialog provided on the handheld.
Lecture 1 IntroductionProgramming Handheld and Mobile devices 16 More issues to bear in mind Power –Handhelds run on batteries and thus do not have the same processing power as a desktop PC. The handheld is intended as a satellite viewer for corresponding desktop applications. If your application needs to perform a computationally intensive task, you should implement that task in the desktop application instead of the handheld application. Memory –Palm Powered handhelds have limited heap space and storage space. Different versions of the handheld have between 512K and 8MB total of dynamic memory and storage available. The handheld does not have a disk drive or PCMCIA support.
Lecture 1 IntroductionProgramming Handheld and Mobile devices 17 More issues to bear in mind File System –Because of the limited storage space, and to make synchronization with the desktop computer more efficient, Palm OS does not use a traditional file system. You store data in memory chunks called records, which are grouped into databases. Backward Compatibility –Different versions of Palm Powered handhelds are available, and each runs a different version of Palm OS. Users are not expected to upgrade their versions of Palm OS as rapidly as they would an operating system on a desktop computer.
Lecture 1 IntroductionProgramming Handheld and Mobile devices 18 Some references The full documentation for Palm tools is available online at: –www.palmos.com/dev/support/docs/www.palmos.com/dev/support/docs/ A tutorial can be found in Palm OS Programming 2 nd Edition, Rhodes and McKeehan, OReilly Books Similar for J2ME J2ME in a Nutshell (O'Reilly Java) (Paperback) by Kim Topley For Bluetooth etc, maybe Wireless Java Programming with J2ME (Paperback) by Yu Feng, Jun Zhu, Sams Publishing, 2001 More references will be added to the course Web site as we go along. See www.macs.hw.ac.uk/~rjp or the VLE.www.macs.hw.ac.uk/~rjp