DOC PREVIEW
CU-Boulder CSCI 5828 - Mobile Development Environments

This preview shows page 1-2-3-24-25-26 out of 26 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 26 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Mobile Development EnvironmentsDavid CheesemanOutlineMotivation for Investigating Mobile Development EnvironmentsIntroduction to Mobile EnvironmentChoices in Platform DesignDetailed Description of Select Mobile EnvironmentsOS OverviewHardware OverviewMarketplace EnvironmentDevelopment Freedom/LimitationsPersonal InputWho I'm siding with and why.Comments, QuestionsMotivational InterestInitial InterestTracker Project Research Platform (Systems Lab)Initially Symbian, transitioned to Android.Project Now Called DroidScanneContinued InterestMobile Productivity AppsScheduled MutingEnvironment Aware Applications Mobile GamingPerformance on Low-Power DevicesEnvironment Aware Games (GPS, AR Games)Cross Platform Games (iPhone, Android, & More)IntroductionSmartphones are quickly becoming ubiquitous and affordable.Ubiquity was predicted way back in the days of Java ME.Abowd, G. D. and Mynatt - Charting past, present, and future research in ubiquitous computing.Moore's law also applies to price, not just power.Battery life limits major performance increases.As phones powerful enough to run major OS's permeate the market, supply will drive down price.Introduction Cont.Side-Effects of Ubiquity?Different marketing and usage philosophies develop.Hardware and Software StandardsBusiness vs. Pleasure UsageGadget vs. Complete PlatformEtc.Developers must choose 1 or more sides.Several philosophies conflict.Introduction Cont.Current Platforms (* - denotes ones I will cover)Java Enabled PhonesWindows MobileBlackberrySymbianiPhone OS*Palm WebOSAndroid*Windows Phone 7 Series*Choices in Platform DesignRestricted vs. Unrestricted HardwareClosed vs. Open SourceApplications ModelApp Distribution ModelRestricted vs. Open HardwareRestricted Hardware Hardware is limited to a single manufacturer or hard requirements on hardware to run the platform are put in place.Pros:Minimal Performance Level EnsuredPredictable Sensor/Input AccessCons:No or Few 3rd Party Phones and/or AccessoriesNew sensors/features not always available until a change in the standard.Early adopters can feel the pain on a change in the hardware standard.Restricted vs Open HardwareOpen Hardware No hard limits are placed on the hardware. OS is made available to any manufacturer.Pros:Great variety in hardware and accessories!Cons:No guaranteed access to sensors/inputs.No guaranteed performance level.OS should accommodate developers to detect above shortcomings of hardware.Closed vs. Open SourceOpen Source (Free and Open Source)ProsMakes OS available without barrier to all developers/hardware manufacturers.Improves security/performance through transparency.Cons:Hard to control installable apps.e.g. Rooting an Android device and installing unsigned packages.People can branch the OS to suit their needs e.g. AT&T branched Android to only allow apps it approves in the Android Marketplace. They're still rootable though.e.g. Alternative interface designs and conventions. (HTC unlocking multi-touch)Closed vs. Open SourceClosed SourceProsYour performance/security tweaks stay secret.Can license your OS to device manufacturers to make money.Can license your API's to make even more money.ConsNo one besides you can comment on your performance/security tweaks.No one besides you can catch performance/security holes.Counter ProYou can use BSD or similar licensed open source code and still keep your source closed.Application ModelSingle or Multi-Process?Single ProcessEnsures maximum usage of system resources for consistent behavior of an app.No convention necessary for memory and resource management.Multi-ProcessAllows for backgrounds services (chat clients, syncing services, background music, etc)Allows App-to-App interaction (though I can't think of a usage case)..Must choose convention on how to manage memory, processes, and system resources.App Distribution ModelMarketplace ModelsDefault MarketplacesAllows control over available apps.Arguably a requirement of today's mobile marketplace.3rd Party MarketplacesAllows for diverse marketplace standards.e.g. SlideME Android Marketplace & Cydia for iPhone*Single Party DistributionAllow individual developers self-publish their apps.iPhone PlatformArguably the first general user oriented smartphone.42+ million units sold to date. New mobile development paradigms created on the iPhone.Single developer, millionaire returns.Context aware applications and games.New legal issues.Lawsuits against Palm and HTC for mobile UI patents.ReleasesOriginal - June 20073G - July 20083GS - June 2009Other Hardware:iTouchiPadiPhone PlatformOS OverviewSingle Process Application ModelPrevents usable chat clients and background music.Multi-Process Rumored for 4.0.Push Services for Application NotificationProgrammed in Objective CNo Flash SupportHardware OverviewVery Restricted Hardware DeploymentiPhone, iTouch, and iPad only.Huge Market PresenceHardware/Pricing Updates Burned Many Early AdoptersConsumer Hardware = Development HardwareiPhone PlatformMarketplace OverviewNo 3rd Party Marketplaces.$99 to Access SDK/Publish Apps.Very profitable marketplace.Apps can and have been removed even after they've been approved.Personal InputApple's ability to pull apps seems is bad without a 3rd party alternative marketplace.Look, feel, and *usability of the iPhone is very good.Can't be ignored due to its pervasiveness in the market.The Apple 'cult' provides market stability.Android PlatformLinux Based Mobile OS2003 - Android Inc. founded and starts Android OS.August 2005 - Google buys Android.November 2007 - Release announced in by the Open Handset Alliance.October 2008 - First Android phone released and entire Android source opened under the Apache Licence (Free and Open Source).Android PlatformOS OverviewApps Programmed in JavaMulti-ProcessNo Multi-Touch (US Only, Apple's Fault?)Designed for Battery/Resource EfficiencyEvery window is its own process or 'activity'.OS removes processes from memory and saves its state for late resumption.Background services can be suspended similarly.OS allows apps to keep themselves from being paged out and the disabling of power saving conventionsAndroid PlatformHardwareDevelopment Hardware Buy a dev phone, root a consumer phone or use the emulation environment.Consumer Hardware (no real limit)Huge selection of phones.Netbooks and internet tablets.iTouch/Zune HD competitive touch devices?Marketplace Overview3rd Party Marketplaces Allowed!Unsigned Installs Allowed (grassroots distribution).Most apps are free


View Full Document

CU-Boulder CSCI 5828 - Mobile Development Environments

Documents in this Course
Drupal

Drupal

31 pages

Deadlock

Deadlock

23 pages

Deadlock

Deadlock

23 pages

Deadlock

Deadlock

22 pages

Load more
Download Mobile Development Environments
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Mobile Development Environments and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Mobile Development Environments 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?