The iphone

  • Upload
    nili

  • View
    81

  • Download
    1

Embed Size (px)

DESCRIPTION

Projection keyboard. Andriod. The iphone. Mobile Computing. MyVu. Portable projectors. The iPad. Chapter Outline . Definition Trends of computing Mobile devices Mobile computing issues & Challenges Mobile computing applications & platforms Mobile OS. What is computing?. - PowerPoint PPT Presentation

Citation preview

Slide 1

The iphone

Projection keyboardMyVuPortable projectorsAndriodThe iPad

Mobile Computing 1

Chapter Outline

Definition Trends of computing Mobile devices Mobile computing issues & Challenges Mobile computing applications & platformsMobile OS2What is computing?The activity of performing computations.ORComputing can also be defined as the activity of using computer hardware and software for some purpose .3

Computing Trend

SizeNumberOne Computer for Many People(Mainframe Computing)One Computer for One Person(PC Computing)Many Computer for One Person(Pervasive Computing)

1960s1980s 2000sExisting computing paradigms

Personal Computing

Distributed Computing

Mobile Computing

Pervasive Computing Autonomic Computing

Parallel Computing

Cloud Computing

SuperComputing

5

Computing ParadigmsPersonal computing systemrefers to the use of personal computers for Computation.Characterized by Local software installation, Local system maintenanceCustomizable to user needs Very low utilization

6(1980s)6Computing ParadigmsDistributed computing : refers to the use of distributed systems to solve computational problems.Distributed systemconsists of multiple autonomouscomputersthat communicate through acomputer network. it appears to its users as a single coherent system. 7Eg. GOOGLE , bank data base ,each keeping local copy , 7Distributed computing example: surfing the web from different terminals on university . Each web page consists of hypertext, pictures, movies and elements anywhere on the internet8Distributed computing

9Distributed computing Distributed systems are characterized by:remote information access (Message passing )High availability (replication , mirrored execution, ...)fault tolerance (atomic transactions, consistency )Security 10Computing ParadigmsParallel ComputingCalculations of large problems are divided into smaller parts and carried out simultaneously /concurrently on different processors.Characterized by Shared memory (to exchange information between processors)

11Parallel Computing

12Computing ParadigmsWhat is Mobile Computing? MobileAble to move freely. usually Wireless is need to move freely . ComputingThe activity of performing computations.A simple answer => Performing computation in mobile units

13Mobile ComputingUsing:small size portable computers, hand-helds and other small wearable devices,To run stand-alone applications (or access remote applications) via:wireless networks: IR, BlueTooth, W-LANs, Cellular, W-Packet Data networks, SAT. etc.By:nomadic or mobile users (animals, agents, trains, cars, cell phones, .)

14Mobile ComputingThree basic componentsNetworks: communication Devices and computing units :mobileApplications : Computation

15Networks: mobile/wireless networks + wired networks (how to maintain the network quality and guaranteed services, )Devices and computing units (normally limited resources, i.e., processing power, memory, energy, devices)Applications (distributed applications with mobile users and mobile data, )

15Computing ParadigmsPervasive/ Ubiquitous computing is about the invisible and everywhere (every time) computingUbiquitous= seeming to be in all placesPervasive= present or noticeable in every part of a thing or place

16Pervasive computing Characteristics Invisible: tiny, embedded, attachableEverywhere: wireless, dynamically configurable, remote access, adapting, It is about making computers so embedded, so fitting, so natural that we use them without even thinking about them.17Pervasive computing ExampleA simple example is the automatic adjustment of heating, cooling and lighting levels in a room based on an occupants profile. refrigerators "aware" of their suitably tagged contents, able to both plan a variety of menus from the food actually on hand, and warn users of stale or spoiled food.

18Pervasive computing Characterized by :Context Awareness (physical location, physiological state, emotional state,.. distraction-free)Ad-hoc NetworksSmart Spaces,(equipped with visual and audio sensing systems ) Smart Sensors, Wearables

19"Smart spaces" are ordinary environments equipped with visual and audio sensing systems that can perceive and react to people without requiring them to wear any special equipment19Cloud ComputingCloud computing provides computation, software, data access, and storage services that do not require end-user knowledge of the physical location and configuration of the system that delivers the services.Cloud computing characteristics: Agility, Reduced Cost, Device And Location Independence, On-demand Scalability And Performance2020Cloud computing

21http://en.wikipedia.org/wiki/File:Cloud_computing.svg21Mobile Devices22Mobile devicesA mobile device (a.k.a. handheld device, handheld computer) is a pocket-sized computing device, typically having a display screen with touch input or a miniature keyboard.

Due to the rapid advancement of the technology its hard to make a specific classifications of mobile devices. 23In this section I will try to give some overview of the current major handheld devices.23Different types of mobile devices LaptopNotebookNetbookUltra-Mobile PCCommunication devicespagerSmartphonePDA &Pocket PCcell phone Cordless phoneTablet PCE-book readers

24Laptops, Notebook, & Netbooks

Laptops: 1991Notebooks: 1996Netbooks: 2006

25Mobile devicesLaptop in general is a small personal computer designed for portability.Usually all of the interface hardware(ports, graphics card, sound channel, etc.,) are built in to a single unit.Contain batteriesthat can power the device for some periods of time.upgrade is usually difficult/impossible. ( Keyboard / display)

26One main drawback of the laptop is sometimes, due to the size and configuration of components, relatively little can be done to upgrade the overall computer from its original design. Internal upgrades are either not manufacturer recommended, can damage the laptop if done with poor care or knowledge, or in some cases impossible, making the desktop PC more modular. Some internal upgrades, such as memory and hard disks upgrades are often easy, a display or keyboard upgrade is usually impossible26LaptopNotebookScreen -(10 and above)Purpose- (multi- purpose)Weight (light)Computing power (high )heavy multi-tasking loads e.g creating and editing HD video or computer aided engineering SWs.contain high capacitybatteries.

27interface hardware( graphics card, sound channel, etc., are built in to a single unit)

display or keyboard upgrade27

LaptopNetbook Screen -(7-10)Purpose (limited,.. internet, basic applications)Weight (very light)Computing power (low )Used for basic applications. E.g. Office applications Longer battery life.

28LaptopUltra mobile-pcs(UMPCs)Screen -(4-7)Purpose(very limited,, Internet, veiw info)Weight (very very light)Computing power (very low )Used for basic applications. E.g. Office applications Longer battery life.UMPCs are pocketable!reduced specification (lack CD-drive, LAN )

29Communication devices

PagerBeeperbecause of the sound it madeVoice Tone PagersRecorded Voice message.Numeric Pagerscan display up to twenty digits at a time.Alphanumeric Pagersmodified versions of numeric pagers with sophisticated display to accommodate text

30

Communication devicesTwo-way Alphanumeric pagersare alphanumeric pagers capable of both sending & receiving text messages.Still used in emergency services.fire & police stations. large hospital complex, where cellular coverageis often weak or nonexistentFancy Restaurant( waiting staff )31Communication devicesMobile phone/cellphoneProvides voice communications, Short Message Service (SMS), Multimedia Message Service (MMS), newer phones also provide Internet services Web browsing, instant messaging capabilities & e-mail.

32Communication devicesPDA: Personal Digital Assistantdesigned primarily to provide the functionality of maintaining appointments, tasks, contacts, etc.usually pen-based,(use a stylus rather than a keyboard for input)Today PDAs function as a cellular phone, fax sender, Web browser and personal organizer.Traditional PDAs have not had phone or fax servicesPocket PC: A type of PDA/smartphone which runs WindowsMobile as its operating system.

33Smart Phones

34

Communication devicesSmart phonetraditional PDA + cellular phonecombines standard phone features, such as making and receiving phone calls, with computer functionality.IncorporatesWi-Fi access, email, calendars and GPS let you store information & install programs

35allow the user to download additional applications and personalize the device, similar to a computer35Smart phone FunctionalityVoice calls (of course), Video callsLocal File StorageInternet/Cloud ServicesOffice ComputingeBook ReaderMultimedia PlayerDigital Audio/Video RecorderLocation Based ServicesContext awareness3636

Communication devicesCordless telephone is a telephone with a wireless handset that communicates via radio wave with base station connected to a fixed telephone line37Mobile devices Tablet PCportablepersonal computerequipped with atouch screenas a primaryinput deviceand designed to be operated and owned by an individual.use virtual keyboardsandhandwriting recognitionfor text input through the touchscreen.Tablet PCs also can be connected to a full-size keyboard and monitor

38Two main types of tablet PCs: Convertible -look a lot like normal laptops except the screen can be rotated all the way around and laid down flat across the Keyboard.Slate- looks like a flat screen without a keyboard39

Tablet PCadvantageGreat mobilitySave moneystationer costs stays in your pocketdigital inkrecord your handwriting and drawings

40pens, pencils, highlighters, notepads, papers, binders, folders, staples, and paperclips 40

Mobile devicesE-book readerportable electronic device thatis designed primarily for the purpose of reading digital books and publication.Support- Text to Speech- Internet Capabilities( Wi-Fi ,3G)

41Pocket PC: A type of PDA which runs WindowsMobile as its operating system41Application42Mobile computing applicationTransportposition and tracking via GPSprevent accidents, navigation system.Tourist navigation

Emergencies/ Disaster reliefearly transmission of patient data to the hospital, current status, first diagnosis.earthquakes, hurricanes, fire etc.

43Emergencies 43Mobile computing applicationBusinessM-Commerce: mobile E-commerce /shopping M-Banking: offer mobile access to financial and account information.Advertising: using SMS is becoming very popular in our country.Traveling salespersonEntertainment, educationoutdoor Internet access multi user gamesM-learning : E-learning 44direct access to customer files stored in a central locationDashen Bank in Ethiopia has launched its mobile banking service Modbirr. The service will entitle customers to conduct banking transactions using their mobile phone anytime, anywhere.44Dashen bankThe first mobileBanking service in Ethiopia45

Mobile computing applicationLocation aware find services in the local environment, e.g. printernearest cash ATM/ shop / restaurant/hotel Web access & Communicationoutdoor Internet accessElectronic MailChattingApplication Services in general push: e.g., breaking news infopull: e.g., nearest cash ATM

46amobile agentis a composition of computer software and data which is able to migrate (move) from onecomputerto another autonomously and continue its execution on the destination computer4647NextBus: Customer ServiceThe ProblemBuses in San Francisco have difficulty keeping to 20 minute schedule during rush hoursPosted schedule becomes meaninglessThe SolutionBus riders carrying Internet-enabled cell phone or PDA helps:Find estimated arrival time at each stop, digitally in real timeSoon location-based advertisements will pop upyou have time to get a cup of coffee before the bus arrivesStarbucks is 200 feet to the right48NextBus (cont.)The ResultsPassengers in San Francisco are happy with the systemWorries about missing the bus are diminishedMay discover they have time for a cup of coffee before the bus arrivesBus company can:Schedule betterArrange for extra buses when neededImprove operations49NextBus Operational Model

Beneficiaries of Ubiquitous Computing Commuters Travelers Stock traders Medical Law enforcement Package delivery Education Insurance Emergency Trucking Intelligence Military

ClientsAdhoc network

Servers

IntranetInternet50Activity State one mobile application idea that you will develop as your course project .

Start thinking about What you will do ? 5152Comparison to Wired Net.Wired Networkshigh bandwidthlow bandwidth variabilitycan listen on wirehigh power machineshigh resource machinesneed physical access(security)low delayconnected operation Mobile Networkslow bandwidthhigh bandwidth variabilityhidden terminal problemlow power machineslow resource machinesneed proximityhigher delaydisconnected operation Home workRead about Microsoft Surface

The sixth Sense by MIT 53

Today Mobile OS Mobile computing issues & Challenges Mobile applications development

54Mobile OSis theoperating systemthat controls amobile devicesimilar in principle to an operating system such as Windows,Mac OS, or Linux that controls adesktop computerorlaptop.55Types of Mobile OS

56Types of Mobile OSSymbianMarket share(2010): 37.6%( #1 ) License : open sourceCompany:Nokia.CPU Architecture: ARMProgrammed in: C++Application store: Symbian Horizon,Ovistore(10000+)Package manager: Nokia Ovi SuiteOther: multi-touch, easily affordable cost

57

58Symbian (Nokia)ProsMassive global reachLeads WW market with 62% of smartphone traffic being open source could help accelerate pace of innovationIssuesLimited reach in the USApplication distribution more difficult today vs. iPhones app store Manufacturer dependent

58Types of Mobile OSAndroidMarket share(2010): 22.7% License : open sourceCompany:Open Handset Alliance(Google).CPU Architecture: ARM, x86Programmed in: C, C++, JavaApplication store: Android market(100,000+)Package manager: APKOther: multi-touch, Linux

59

60Android (Google)Pros:Open source => accelerate pace of innovationManufacturer-independent => could help accelerate consumer adoptionTechnology support (e.g., touchscreen, GPS, accelerometer, video and still cameras)

Issues:Late to market relative to iPhone

60AccelerometerAnaccelerometeris a device that measures theproper accelerationof the device. This isnot necessarilythe same as the coordinate acceleration (change of velocity of the device in space), but is rather the type of acceleration associated with the phenomenon ofweight experienced by a test mass that resides in theframe of referenceof the accelerometer device. For an example of where these types of acceleration differ, an accelerometer will measure a value when sitting on the ground, because masses there have weights, even though they do not change velocity. However, an accelerometer in gravitationalfree fall toward the center of the Earth will measure a value of zero because, even though its speed is increasing, it is in an inertialframe of reference, in which it isweightless.6161GyroscopeAgyroscopeis a device for measuring orientation, based on conservation of angular momentum.2010: $5, based on MEMStechnologya single part with gyroscopic sensors and anaccelerometeroutput up to six full degrees of freedom.

6262Proximity sensor

Aproximity sensor detects the presence of nearby objects without physical contact6363SensorsAmbient Light Sensor3D AccelerometerProximity SensorTemperature and Pressure Sensor6464Types of Mobile OSBlackBerry RIM OSMarket share(2010): 16.0% License : ProprietaryCompany: Research in motion (RIM).CPU Architecture: ARMProgrammed in: JavaApplication store: Blackberry App World(30000+)Package manager: Blackberry Desktop ManagerOther: not multi-touch, push email service

65

Push e-mailis used to describee-mailsystems that provide an always-on capability, in which new e-mail is actively transferred (pushed) as it arrives6566BlackBerry OS (RIM)Pros:Large reach and data-hungry user baseLeads US market with 31% of smartphone traffic #3in WW market with 11% of smartphone traffic Developers not limited to single distribution channelIssues:Less Developer momentumApplication distribution more difficult today vs. iPhones app store Users more email focused vs. web consuming iPhone usersRIM / hardware dependent

66Types of Mobile OSApple iOSMarket share(2010): 15.7%License : ProprietaryCompany: Apple.CPU Architecture: ARMProgrammed in: C, C++, Objective-CApplication store: Apple App Store(300,000+)Package manager: iTunesOther: Mac OS X, multi-touch, for iphone ,ipod touch ipad, Apple Tv only 67

68

iPhone OS (Apple)Pros:Strong user growth and data-hungry user baseMore than 10 million iPhones soldApplication store creating a vibrant app ecosystem with great momentumMore than 3K applications (~20% free)More than 1 million downloadsPowerful technology (e.g., multi-touch, GPS, accelerometer)Issues:App approval process is largely a black-box to developersApps viewed as competitive to Apple are often shut downApp store is the only authorized distribution channelApple / hardware dependent

68Types of Mobile OSWindows MobileMarket share(2010): 4.2%License : ProprietaryCompany: Microsoft.CPU Architecture: ARMProgrammed in: C++Application store: Windows Marketplace for MobilePackage manager: Windows Mobile Device Center/ ActiveSyncOther: multi-touch, Windows CE69

Windows MobileProsStrong user reach#2 in US market with 30% of smartphone traffic Manufacturer independent >18K appsWindows Mobile 7 support refurbish UI and multi-touchIssuesLess developer enthusiasm vs. that for iPhone and AndroidApplication distribution more difficult today vs. iPhones app store

7070Types of Mobile OSOthers Palm OS- mobile operating system initially developed by Palm webOS Mobile operating system from HP/PalmBada- Mobile operating system developed by Samsung ElectronicsMeeGo OS from Nokia and Intel (open source, GPL)

71Developer Resources7273More on Mobile OSMetricsAdMob metrics (http://www.admob.com/s/solutions/metrics)Opera State of the Mobile Web Report (http://www.opera.com/mobile_report/)Mobile OS introductions / summarieshttp://en.wikipedia.org/wiki/Symbian_OShttp://en.wikipedia.org/wiki/IPhone_OShttp://en.wikipedia.org/wiki/Windows_Mobilehttp://en.wikipedia.org/wiki/Google_Androidhttp://en.wikipedia.org/wiki/BlackBerry_OSComparison / analysishttp://www.brighthand.com/default.asp?newsID=14142http://www.osnews.com/story/20329/SDK_Shoot-Out_Android_vs_iPhonehttp://weblog.infoworld.com/fatalexception/archives/2008/09/sdk_shootout_an.htmlhttp://www.alleyinsider.com/2008/10/iphone-app-store-s-brutal-reality-get-viral-or-don-t-quit-your-day-job

73Mobile Computing Issues:Mobile device issues Short battery lifetime (Lithium ion battery: 5 hrs max) Limited hardware (display, memory, disk space, etc). Prone to theft and destructionUnavailable (frequently powered-off) Few standards (hardware, architecture, etc)Networking issuesMobile connectivity is highly variable in performance and reliability.(unpredictable variation in network quality)Routing data and messages(variable location) 74Some buildings may offer reliable, high-bandwidth wireless connectivity while others may only offer low-bandwidth connectivity. Outdoors, a mobile client may have to rely on a low-bandwidth wireless systems74Applications issuesTranscoding, adaptive resource managementFile compression 75Limitations of the Mobile EnvironmentLimitations of the Wireless Networkheterogeneity of fragmented networksfrequent disconnectionslimited communication bandwidth Limitations Imposed by MobilityLimitations of the Mobile Computer7677ChallengesDisconnection Low bandwidth High bandwidth variability Low power and resources Security risks Wide variety terminals and devices with different capabilitiesDevice attributes Fit more functionality into single, smaller device

Mobile computing issues & Challenges Location issues Connection QualityDevice limitationsActive transactionSecurity risks Wide variety terminals and devices with different capabilities

78Challenges Location Device location is always changingMobility: challenges and opportunitiesLocalization & Location sensitivity 79LocationLocalization is the ability of the architecture of the mobile application to accommodate logic that allows the selection of different business logic, level of work flow, and interfaces based on a given set of location information commonly referred to as locales.E.g Location in Ethiopia currency ETB , TAX e-commerce Web sites are able to take into account the different taxation rules depending on the locale of the sale and the location of the purchase80LocationLocation sensitivity is the ability of the device and the software application to first obtain location information while being used and then to take advantage of this location information in offering features and functionality.81Colleting location methods for collecting locationPrompt the user to select the location Using the device( GPS, signal strength and triangulation can be used to come up with some approximate location information, depending on the cellular network)Techniques Triangulation Proximityscene analysis

82Triangulation (Figure 1.4) relies on age-old geometric methods that allow calculationof the location of a point that lies in the middle of three other pointswhose exact locations are known. If the distance to each one of the three pointsis known, we can use geometric techniques to calculate the exact location of theunknown point. Proximity-based methods measure the relative position of the unknownpoint to some known point. Scene analysis relies on image processing andtopographical techniques to calculate the location of the unknown point based ona view of the unknown point from a known point.82 Location Dependent Services Discovery: What services exist in my local environment?e.g., printers, file and compute services, special localapplications, etc. Follow me services: Route calls to my current location,Migrate my workstation desktop to the nearestworkstation screen Information services: Broadcast/push information (e.g., Flight 59 willdepart from Gate 23) Pull information (e.g., What gate will Flight 59depart from?) Service migration: computations, caches, state, etc.follow mobile device as it moves through the network Privacy: what applications can track user locations?83Location-Based Applications (LBAs)Examples:

Location-based recommendations, geo-tagging GeoLife: shopping list when near a grocery storeTrafficSense: real-time traffic conditionsFieldworker assistant

Location expresses context of userFacilitates content delivery

84

8585Connection .Quality of ServiceWireless connection is used usually mobility means loss of network connectivity reliability. Frequent Disconnection Variable Bandwidth( indoor , outdoor)Heterogeneous Networks (2G,3G, Satellite, wifi..86Frequent DisconnectionsHandoff blank out (>1ms for most cellulars)Drained battery disconnectionVoluntary disconnection (turned off to preserve battery power, also off overnight)Theft and damage (hostile environment)Roam-off disconnections87Connection.Address Migration Existing applications send packets to a fixed network addressNeed to support dynamically changing local addresses as mobile device moves through network Mobile IPApps should stop & resume must know how to deal with lack of reliable connectivity.E.g user traveling in a train and downloading report using his PDA while passing through a tunnel .

88Solution variable Bandwidth Caching is a good idea, e.g., web cache Asynchronous/spool-oriented applications, like mail or printing Trickle back data when bandwidth is available Disconnected file systems:Applications adaptation to changing quality of connectivity High bandwidth, low latency: business as usual High bandwidth, high latency: aggressive pre fetching Low bandwidth, high latency: asynchronousVertical handoff in case of heterogeneous network.

89Device limitation Device limitation PowerStorageCPU user interface 90Device limitation Mobile device are small!Physical limitation => Display , Memory, Cpu, Power limitations The heaviest part of mobile devices are batteries

91Mobile ComputersCPUsMultiple coresMega Hertz. 1 Giga Hertz newRAM512 MB, common in 2011in Giga Bytes newPersistent Storage32 GB MicroSD common in 20119292Limitations of the Mobile ComputerShort battery lifetime (max ~ 5 hours)Subject to theft and destruction => unreliableHighly unavailable (normally powered-off to conserve battery)Limited capability (display, memory, input devices, and disk space)Lack of de-facto general architecture: hand-helds, communicators, laptops, and other devices93Support for multiple platforms

?????94Device limitation Varying user interface some alternative interfaces are voice user interfaces, smaller displays, stylus and other pointing devices, touch-screen displays, and miniature keyboardsFor example, drivers who want to get some directions to their destination may use a data-enabled cellular phone.Most apps must be multichannel /multimodal

95Active transactionActive transactionmost stationary applications, passive systems because they are in a passive state, waiting for some external signal from the user to tell them to start doing some particular thing.. then comes message based system any one participant in the system could send a message to another participant in the system. and, if desired, in an asynchronous manner.

96Active transaction..Later came the idea of push. In the push model of communication, an information producer announces the availability of certain types of information, an interested consumer subscribes to this information, and the producer periodically publishes the information (pushes it to the consumer).There is much in common between the concepts of messaging systems and push systems. The principle difference is that messaging systems are asynchronous by definition. This requirement does not exist for push based systems. Push systems, by denition, are active systems.

97Active transactionwe will define active transactions as those transactions initiated by the system. Active transactions may be synchronous or asynchronous. Synchronous transactions are time dependent transactions.

98Mobile software development(WHY?) Motivation In Africa:+ 1 billion people+ 30 million computers+ 264 million mobilesLargest growth rate of mobile subscribersFor most Africans/Ethiopians , our mobile is our only computing device!

99Mobile Application Marketplaces Google, Apple, Nokia, Palm, etc. have mobilemarketplaces where one can sell applications. Application delivery over the Network! Apple iPhone App store: 350,000 applications 1 Billion downloads ! $1 Million USD a day in sales!

100Mobile Software DevelopmentChallengesDifferent Operating Systems.Different Screen Size.are a challenge even on the same OSDifferent Input methods.Keyboard (Keypad Keyboard Soft Keyboard), TrackBall/Joystick, Pen (Handwriting), Touch, Microphone (Voice Command), Camera (Image Recognition), GPS 101 some with both touch and keyboard101Different Hardware Architectures.most dominant architectures in the market of CPUs is the ARM architectureLimited computing capabilities.Lack of good language supportSecurity Always shared medium

102Mobile Software DevelopmentSolutions to ChallengesMulti Modal Interface.E.g Combining the face and speech recognition together helps to increase speech recognition accuracy and lower word error rateSimplified Algorithms (Speed ).Data Compression (Size & Speed).Programming Language Selection.Screen independent graphical coordinates or layout managers.Unicode SupportEncryption and authentication

103103Mobile Software DevelopmentProgramming LanguagesC/C++, .NET, Java ME, FlashLite, SilverLight MobileJavaFX, HTML/WML/JAVASCRIPT/AJAXselection is same reasons for using them on the desktop. Some languages are for web, some are for performance, some for portability, some of skills and preferences.104JavaFX(graphics, media, web services)

104Architecture( Manged Vs. native)If you write programs for the mobile devices you should plan to work in the Compact Framework using managed codeThis makes your programsPortableSafeEasy to write 105Native (unmanaged) codecompiled for the specific hardware in the deviceHas direct access to the processor instruction set

106Managed Code Programs execute within a managed environmentCode is not produced for a specific target hardwareCode is validated before execution

107So, Rules To Code ByUse Managed Code wherever possibleGood reasons to use Native Code:You *really* want speedYou *really* want to drive the hardware directlyYou are being paid *really* large sums of money to do it108Why Android? Open source Easy to develop Wide tech support Android is going to be the #1 Mobile Os in the market by 2014 !109Developers ToolkitsTo start to develop you need:JDKEclipse IDEADT plug-inAndroid SDK

110Mobile Application

Group project developing mobile app and demo.

A chance to demonstrate your creativity!

Surprise price for the Best App!

111Application Categories Informational Converters, weather, area-guides, finance Location-based Data Entry Business records, medical records, exercise Send info to server for aggregation? Multimedia Camera, video, music, photos, ringtones Shopping m-commerce, compare prices

112Application Categories (Social) Networks IM, MySpace, Facebook Communication Skype, VoIP, SMS Business productivity spreadsheets, inventory Utilities Torch (flashlight), notepad, stopwatch Games

113Summary Computing TrendExisting computing paradigmsMobile computing applicationsDifferent types of mobile devices Mobile OS Mobile Software Development114Rechange