Σχόλια 0

Το κείμενο της παρουσίασης

BurigatLaboratorio di Interazione Uomo-MacchinaDipartimento di Matematica e InformaticaUniversitàdi Udinewww.dimi.uniud.it/burigatstefano.burigat@uniud.it2SmartphonesDevelopment platforms3History of smartphone platforms•1993: IBM Simon, the first smartphone•1996: Palm Pilot 1000 PDA with Palm OS•1996: First Windows CE Handheld PC devices•1999: Nokia S40 OS introduced with the launch of the Nokia 7110•2000: Symbian becomes the first modern mobile OS on asmartphone with the launch of the Ericsson R380•2001: Kyocera 6035, first smartphone with Palm OS•2002: Microsoft's first Windows CE (Pocket PC) smartphones•2002: BlackBerry releases its first smartphone•2005: Nokia introduces Maemo OS on the first internettablet N770•2007: Apple iPhone with iOS4History of smartphone platforms•2008: Open Handset Alliance releases Android 1.0 withthe HTC Dream (T-Mobile G1)•2009: Palm introduces webOS with the Palm Pre•2009: Samsung announces the Bada OS with the introduction ofthe Samsung S8500•2010: Windows Phone 7 release•2011: MeeGo (Maemo + Moblin) is introduced with Nokia N9(cooperation of Nokia, Intel and Linux Foundation)•2011: Samsung, Intel and the Linux Foundation announce thattheir efforts will shift from Bada and MeeGo to Tizen•2011: Mer project announced (ultra-portable Linux +HTML5/QML/JS Core), derived from MeeGo5History of smartphone platforms•2012: Mozilla announces Firefox OS•2013 Canonical announces Ubuntu Touch, a version of the Linuxdistribution expressly designed for smartphones (built on theAndroid Linux kernel and using Android drivers)•2013: BlackBerry releases BlackBerry 106History of smartphone platforms7BlackBerry8BlackBerry OS•First introduced in a smartphone in 2002; proprietary multi-taskingoperating system•Current version: BlackBerry 10 OS (new interface, multitasking, gestures,new keyboard, etc.)•Primarily known for its native support for corporate email–all new e-mails, contacts and calendar entries are "pushed" out to the BlackBerrydevice automatically, as opposed to the user synchronizing the data by hand or on apolling basis–BlackBerry handhelds are integrated into an organization's e-mail system through asoftware package called "BlackBerry Enterprise Server" (BES). The software monitorsthe user's local "inbox", and when a new message comes in, it passes it to RIM'sNetwork Operations Center. The messages are then relayed to the user's wirelessprovider, which in turn delivers them to the user's BlackBerry device.–several non-BlackBerry mobile phones (e.g., Palm Treo) have been released featuringthe BlackBerry e-mail client which connects to BlackBerry servers9BlackBerry development•Approaches (change each year!)–BlackBerry Web Development (easier development, lower flexibility)•CSS, HTML5, Javascript•BlackBerry WebWorks SDK•Ripple emulator–BlackBerry Java / Java ME (up to BB7.1)•Eclipse plugin + BlackBerry Java SDK–Native options (BB10 and PlayBook only)•Native SDK (Cascades framework)•Any application that makes use of certain restricted functionality must bedigitally signed so that it can be associated to a developer account atRIM (free)•Applications and themes can be loaded onto BlackBerry devices throughBlackBerry World (only option for BB10), Over The Air (OTA) through theBlackBerry mobile browser, or through BlackBerry Desktop Manager10Windows Phone11Windows Phone•Successor to Windows Mobile (Feb 2010)•Two evolutions: Windows Phone 7.x (last version 7.8) andWindows Phone 8 (last version 8.0.10327.78)•Windows Phone 7.x devices cannot run or update to WindowsPhone 8•Windows Phone 8 replaces its CE-based architecture used onWindows Phone 7 devices with a Windows NT kernel (improvedfile system, drivers, network stack, security components, mediaand graphics support)•Several features of Windows Phone are organized into "hubs",which combine local and online content•The Windows Phone Marketplace is used to digitally distributemusic, video content, podcasts, and third party applications toWindows Phone handsets12Windows Phone development•Applications for Windows Phone 8 (and 7) can be writtenusing Visual C# or Visual Basicand theWindows Phone SDK•Microsoft offers Windows Phone SDK for free (includes VisualStudio 2012 Express for Windows Phone, Windows PhoneEmulator, samples, and documentation); the SDK requires 64-bitWindows 8 Pro or higher•To test applications on a phone, developers must create aMicrosoft account and register the phone•In order to get an application to appear in the Windows PhoneStore, developers need a developer account on the WindowsPhone Dev Center and the application must be submitted toMicrosoft for approval ($19 annual subscription; Microsoftwill take30% of the revenue)13Apple iOS14Apple iOS•Default operating system of iPhone, iPod Touch, and iPad•Current version: iOS 7.0.2 (September 2013)•Unix-like operating system derived from MacOSX•User interface based on the concept of direct manipulation, usingmulti-touch gestures•Multitasking supported through 10 background APIs (in iOS 7,Apple introduced a new multitasking feature, providing all appswith the ability to perform background updates)•Internal accelerometers enable using device motion to controlapplications (e.g., undo command by shaking the device orswitching from portrait to landscape mode by rotating it)•Third-party native applications can only be officially installedthrough the App Store15iOS Development•No third-party native application development for iOS 1.0(2007)•iOS SDK available since iOS 2.0 (2008)–the SDK itself is a free download, but in order to release software, one mustenroll in the iPhone Developer Program, a step requiring payment andApple's approval (annual $99.00 per developer license)•iPhone applications are written in Objective-C (C variant, relativelylow-level coding) using the Xcode development environment (free)•No plan to support Java, Microsoft .NET or Adobe Flash•In order to get an application to appear in the App Store, theapplication must be submitted to Apple for approval (Apple willtake 30% of the revenue)16Android17Android•Mobile open-sorce operating system that uses a modifiedversion of the Linux kernel•Current OS Version 4.3 (Jelly Bean)•Android SDK is available to develop application in managed codein a Java-like language that utilizes Google-developed Java libraries–Software written in Java is compiled into Dalvik bytecodes and executed inthe Dalvik virtual machine (a specialized VM implementation designed formobile device use)•The officially supported integrated development environment (IDE) isEclipse using the Android Development Tools (ADT) Plugin–Developers may use text editor XML files then use command line tools tocreate, build and debug Android applications as well as control attachedAndroid devices•Currently supported development platforms include x86-architecturecomputers running Linux, Mac OS X, or Windows18Android development•A new Android development environment called Android Studio,based on IntelliJ IDEA, is now available as an early accesspreview•Libraries written in C and other languages can be compiled toARM native code and installed using the Android NativeDevelopment Kit•Users can install apps directly (using APK files), or from alternativeapp markets (developers pay $25 for registration to distribute onthe Google Play Store, Googlewill take 30% of the revenue)19Android development: App Inventor•App Inventor is an application originally provided by Google(now maintained by the Massachusetts Institute of Technology)that allows anyone to create software applications for the AndroidOS•It uses a graphical interface that allows users to drag-and-dropvisual objects to create an application that can run on the Androidsystem•Runs through the web browser but you can deploy applications toa physical phone (or the emulator)•You need a Gmail account to log in to App Inventor•Installation instructions: http://appinventor.mit.edu/explore/setup-mit-app-inventor.html20Android development: App Inventor21Android development: App Inventor22Android development: App Inventor•A block to manage automatic reply to messages whendriving