9110i Lec 01 Course Introduction
User Manual: 9110i
Open the PDF directly: View PDF .
Page Count: 81
Download | |
Open PDF In Browser | View PDF |
App Development for Smart Devices CS 495/595 - Fall 2013 Tamer Nadeem Dept. of Computer Science Course Logistics Page 2 Fall 2013 CS 495/595 - App Development for Smart Devices Welcome to CS 495/595 • Timings: Monday 7:10pm to 9:50pm • Location: Dragas 1117 • Instructor: Tamer Nadeem Ph.D from Univ. of Maryland, 2006 Research in Networks, Dist Sys, Mobile Comp. Email: nadeem@cs.odu.edu Office: ECSB 3204 • Office Hours: Mon 1:00pm-2:30pm, or by appointment Page 3 Fall 2013 CS 495/595 - App Development for Smart Devices Welcome to CS 495/595 • Teaching Asst.: Mostafa Uddin Email: muddin@cs.odu.edu Office: ECSB 3106 • Office Hours: Page 4 Fall 2013 Wednesday 10:00am-11:30am, or by appointment CS 495/595 - App Development for Smart Devices Welcome to CS 495/595 • Prerequisites: Comfortable with Java • Grading: • Participation: 10% • Midterm: 25% • Programming Assignments: 40% • Final Project: Page 5 Fall 2013 25% CS 495/595 - App Development for Smart Devices Welcome to CS 495/595 • Class Webpage: • http://www.cs.odu.edu/~cs495/ • Please check course website frequently • Make up classes: • Will be occasionally necessary due to travel • Fixed schedule versus case by case basis? Page 6 Fall 2013 CS 495/595 - App Development for Smart Devices Welcome to CS 495/595 • Text: • Required: • Wei-Meng Lee, "Beginning Android 4 Application Development" • Recommended: • Reto Meier, "Professional Android 2 Application Development" • James Steele, Nelson To, "The Android Developer's Cookbook“ • Android Developers (Dev Guide, Reference, etc.): http://developer.android.com/index.html Page 7 Fall 2013 CS 495/595 - App Development for Smart Devices Welcome to CS 495/595 • Academic Integrity / Honor Code: • "I pledge to support the honor system of Old Dominion University. I will refrain from any form of academic dishonesty or deception, such as cheating or plagiarism. I am aware that as a member if the academic community, it is my responsibility to turn in all suspected violators of the honor system. I will report to Honor Council hearings if summoned.“ • Please refer to ODU Honor Council’s webpage: http://orgs.odu.edu/hc/ Page 8 Fall 2013 CS 495/595 - App Development for Smart Devices Welcome to CS 495/595 • Course Policy: • Grading: • • • • 90-100 80-89 70-79 0-69 A B C F • Late assignments are not accepted. • Attendance • Account & Email Please refer to class webpage for more details. Page 9 Fall 2013 CS 495/595 - App Development for Smart Devices Course Overview Page 10 Fall 2013 CS 495/595 - App Development for Smart Devices This Course • Introduces fundamentals of application development for Android phones • Goals of this course: • Help you learn about mobile app development and best practices • Provide you with the tools, knowledge, and excuse to create a novel mobile app that helps solve a serious problem that strengthens your programming portfolio • Envisions new practical mobile applications/services Page 11 Fall 2013 CS 495/595 - App Development for Smart Devices Class Responsibilities • I will lead lectures • You present 1-2 paper(s) in entire semester (25 minutes) • 2-3 students presentation per class • Some classes will include coding • For every class, read the readings list before the class • Assignments should be on time Page 12 Fall 2013 CS 495/595 - App Development for Smart Devices Course Structure • 1 mid term?, No Final Exam • Tentative date of mid-term: Nov 11th • Semester-long class project • In groups of 2 (max 3). • Individual projects are allowed by permission • Focus on this from early on • Class ends with a final project presentation & demo Page 13 Fall 2013 CS 495/595 - App Development for Smart Devices Participation / Presentation • Ask lots of questions. Period. • I strongly encourage you to ask, disagree, debate • Class presentation • • • • You present 1-2 paper (25 minutes) Check class schedule by next week for reading papers Email me any paper you are interested in Pick 4 open slots (check class schedule) • Earlier you pick, more options you have to choose from • Deadline is Sep 06, 2013 • Email me your choice of paper (and date) • Don’t worry about not knowing the topic of paper • By that time, you will know enough Page 14 Fall 2013 CS 495/595 - App Development for Smart Devices Thoughts on Reading Assignments • Know why you are reading the paper • Reading for absorbing concepts (class assignment) • Read fully, think, reread, ask, challenge • Reading for excitement (deciding project topic) • Read initial parts, don’t try to understand everything, get a feel Page 15 Fall 2013 CS 495/595 - App Development for Smart Devices Course Term Project • Initial proposal due Oct 10 after Fall break • 1- page progress report every 2 weeks (due Friday night) • Final report + demo + presentation • Projects consist of: • Application/Service identification • Solution design • Implementation • Discuss your thoughts and ideas with me • They need not be cooked, and can have many flaws • Statistically, every 18 ideas lead to one decent idea • If you like an area/direction • Search and Read many many related references Page 16 Fall 2013 CS 495/595 - App Development for Smart Devices More on Projects • Project ideas take time … think now and then • Spending 3 hours for 10 days better than 10 hours for 3 days • Find a project partner(s) early • Search and discuss App/Services ideas • Everyone in the class will try/critique apps from other teams • At end of the course we will vote for the Top App • Possible Application/Service domains: • Transportation • Education • Energy • Smart Home • Health Page 17 Fall 2013 CS 495/595 - App Development for Smart Devices Labs/Facilities • Development Environment: • Your laptop • ECSB 3104 (Open Research Lab) • SmartApp Lab (under construction) • Collaboration: • Internet • BlackBoard Discussion (http://clt.odu.edu/bb/) • Friends/Colleagues Page 18 Fall 2013 CS 495/595 - App Development for Smart Devices INTRODUCTION Page 19 Fall 2013 CS 495/595 - App Development for Smart Devices Mobile Computing • Driven by technology and vision • • • • wireless communication technology global infrastructure device miniaturization mobile computing platforms • The field is moving fast • “People and their machines should be able to access information and communicate with easily and securely, in any medium each other or combination of media – voice, data, image, video, or multimedia – any time, anywhere, in a timely, cost-effective way.”, Dr. G. H. Heilmeier, Oct 1992 • “The mobile device will be the primary connection tool to the Internet for most people in the world in 2020.”, PEW Internet and American Life Project, Dec. 2008 Page 20 Fall 2013 CS 495/595 - App Development for Smart Devices Smart Devices • A smart device is a device that is digital, active, computer networked, is user reconfigurable and that can operate to some extent autonomously. • A smart device is a ubiquitous computing device: a device that exhibits some properties of ubiquitous computing including artificial intelligence. • Mark Weiser categorized ubiquitous devices: • Tabs: accompanied or wearable centimeter sized devices, e.g., smartphones, smart cards • Pads: hand-held decimeter-sized devices, e.g., laptops • Boards: meter sized interactive display devices, e.g., horizontal surface computers and vertical smart boards. Page 21 Fall 2013 CS 495/595 - App Development for Smart Devices Mobile Devices • Multi-purpose devices (e.g., personal office, mobile phone, camera, etc.) • Mobility: loosely-bound vs. tightly-bound to users • Personalized • Operates as a single portal, e.g., a Web portal. • Internal application services • External services typically accessed local area wireless network • Intermittent resource access • A locus of control that resides in the smart device. • Networked, distributed and transparently accessible. • Context awareness Page 22 Fall 2013 CS 495/595 - App Development for Smart Devices Smart Devices at Home/Office Page 23 Fall 2013 CS 495/595 - App Development for Smart Devices Smart Devices on Move BT Cellular FM/XM GPS DVB-H Apps WLAN Processor Media Wimax Processor Processor Page 24 Fall 2013 CS 495/595 - App Development for Smart Devices Smart Devices on Road Page 25 Fall 2013 CS 495/595 - App Development for Smart Devices Smart Devices for Intelligent Transportation Mobile Millennium Traffic in San Francisco and the Bay Area Source: http://traffic.berkeley.edu/ CarTel Project at MIT Source: http://cartel.csail.mit.edu/doku.php Page 26 Fall 2013 CS 495/595 - App Development for Smart Devices Smart Biomedical Systems Wireless telemedicine Wireless network In-‐body smart devices -‐sensors/monitoring devices -‐drug delivery systems -‐medical robots -‐neural implants Page 27 Fall 2013 Recovery from nerve damage CS 495/595 - App Development for Smart Devices Smart Devices in Industry Page 28 Fall 2013 CS 495/595 - App Development for Smart Devices Smart Devices and Mobile Social Networking Microsoft KIN Page 29 Fall 2013 CS 495/595 - App Development for Smart Devices Smartphones Trend: everything in one small device Page 30 Fall 2013 CS 495/595 - App Development for Smart Devices Smartphones - Overview • A smartphone is a high-end mobile phone • Combines the functions of • • • • • • • • • mobile phone personal digital assistant (PDA) portable media players camera phones high-resolution touchscreens web browsers GPS navigation Wi-Fi and mobile broadband access etc. • Feature phone vs. Smartphone • Feature phone • proprietary firmware & limited platforms • Smartphone • open and complete mobile operating system • tightly integrate with the user interface and phone features • relies on a more powerful application programming interface (API) Page 31 Fall 2013 CS 495/595 - App Development for Smart Devices Smartphones - History Early Years: IBM Simon (1992) Symbian: Ericsson R380 (2000) Ericsson P800 (2002) Page 32 Fall 2013 Nokia 9000 (1996) Nokia 9110i (1998) Nokia 9110i (2000) Nokia 9210 (2000) Nokia 9500 (2005) Nokia E90 (2007) Ericsson GS88 (1997) Nokia N95 (2007) Nokia N8 (2010) CS 495/595 - App Development for Smart Devices Smartphones - History Palm, Windows, BlackBerry: Palm Kyocera Windows CE Pocket 6035 (2001) PC (2002) Palm OS Treo (2002) iPhone: Android: Windows Phones 7 (2007) RIM BlackBerry (2002) iPhone (2007) iPhone 3G (2008) iPhone 4 (2010) iPhone 4S (2011) iPhone 5 (2012) Android G1 – HTC Dream (2008) Nexus One (2010) Nexus S (2011) Galaxy Note (2013) Page 33 CS 495/595 - App Development for Smart Devices Fall 2013 Smartphones - Statistics Page 34 Fall 2013 CS 495/595 - App Development for Smart Devices Smartphones - Statistics Chart by The Mac Observer, from Gartner data Page 35 Fall 2013 CS 495/595 - App Development for Smart Devices Tablets - Statistics Chart by The Mac Observer, from Gartner data Page 36 Fall 2013 CS 495/595 - App Development for Smart Devices Mobile Applications • What are they? • Any application software that is developed for small lowp o w e r h a n d h e l d d e v i c e s s u c h a s personal digital assistants, enterprise digital assistants or mobile phones. • Users on mobile phone’s • Typically check the news, weather, email, or their social networks • Often have a choice between the mobile web version or a speciallycreated mobile app. • Mobile App Types • Web apps: run in a web browser • HTML, JavaScript, Flash, server-side components, etc. • Native: compiled binaries for the device • Not cross-platform, but more interesting options Page 37 Fall 2013 CS 495/595 - App Development for Smart Devices Web App vs. Native App Page 38 Fall 2013 CS 495/595 - App Development for Smart Devices Native Development Environments • Options • Java ME • .NET Compact Framework (C++, C#, VB.NET) for • Windows Mobile • Qualcomm’s BREW (C or C++) • Symbian (C++) • BlackBerry (Java) • Android (Java) • iPhone (Objective-C) Is having so many choices and so much industry turmoil/competition a good thing? Page 39 Fall 2013 CS 495/595 - App Development for Smart Devices Development Environments • Most platforms have an SDK that you can download and build against • Every platform has an emulator that you can use to test your apps • Most emulators are configurable to match a variety of mobile devices • Various screen sizes, memory limitations, tablets, etc. • In practice, emulators quite limited IDE - integrated development environment that provides tools to allow a developer to write, test and deploy applications into the target platform environment. Page 40 Fall 2013 CS 495/595 - App Development for Smart Devices xCode IDE & iPhone Emulator Page 41 Fall 2013 CS 495/595 - App Development for Smart Devices Eclipse and Android Emulator Page 42 Fall 2013 CS 495/595 - App Development for Smart Devices Smart Phone – the good • Always with the user • Increasingly powerful devices • Typically GPS capable • Typically have accelerometer • Designed for communication • 2+ types of wireless connections • Many apps are free or low-cost Page 43 Fall 2013 CS 495/595 - App Development for Smart Devices Smart Phone – the not-so-good • Limited battery life • Limited processor speed • Limited RAM • Limited, unreliable, and slow network access • Limited screen size • Limited permanent storage capacity • Limited or awkward input • (none great: soft keyboard, phone keypad, touch screen, stylus, speech) • Inconsistent platforms across devices • High costs associated with data transfer Page 44 Fall 2013 CS 495/595 - App Development for Smart Devices Android Page 45 Fall 2013 CS 495/595 - App Development for Smart Devices Android • Android, Inc. founded in Palo Alto, California in October 2003 • Google acquired Android Inc. in August 2005 • Developed a mobile device platform powered by the Linux kernel • Google marketed the platform to handset makers and carriers on the premise of providing a flexible, upgradable system • On November 2007, the Open Handset Alliance, a consortium of several companies (e.g., Broadcom, Google, HTC, Intel, etc. unveiled itself). The goal is to develop open standards for mobile devices. • Open Handset Alliance unveiled their first product, Android, a mobile device platform built on the Linux kernel version 2.6 • Android OS (open source) released in October 2008 Page 46 Fall 2013 CS 495/595 - App Development for Smart Devices Why Android • Simple and powerful SDK • No licensing fees • Excellent documentation, and a thriving developer community • From commercial perspective • Requires no certification for becoming an Android developer • Provides the Android Market for distribution and monetization of your application • Has no approval process for application distribution • Gives you total control over your brand and access to the user’s home screen Page 47 Fall 2013 CS 495/595 - App Development for Smart Devices Android Version • Initial: 1.5 (Cupcake) (Apr 2009) , 1.6 (Donut) (Sep’09) • 2.0/2.1 (Eclair) (Oct’09/Jan’10): new web browser, new user interface, support for HTML5, Geolocation API, enhanced camera features / voice controls, 5 homescreens, animated backgrounds. • 2.2 (Froyo) (May’10): speed improvement, Chrome v8 JavaScript engine, Wi-Fi tethering, Adobe Flash support • 2.3 (Gingerbread) (Dec’10): Near Field Communication • 3.0 (Honeycomb) (Feb’11): tablet-oriented release, supports multicore processors, hardware acceleration for graphics • 3.1 (Honeycomb) (May’11): directly transfer content from USB devices • 3.2 (Honeycomb) (July’11): adds several new capabilities for users and developer (e.g., providing developers with more precise control over the UI) • 4.0 (Ice Cream Sandwich) (Oct’11): combination of Gingerbread and Honeycomb • 4.1-4.3 (Jelly Bean) (Jul’12): improve user interface (4.1), Bluetooth Low Energy http://en.wikipedia.org/wiki/Android_version_history support (4.3) Page 48 Fall 2013 CS 495/595 - App Development for Smart Devices Features and Specifications I • Platform is adaptable to larger, VGA, 2D graphics library, 3D OpenGL graphics library • Storage - SQLite, a lightweight relational database • Connectivity - supports connectivity technologies including GSM/ EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE, NFC and WiMAX. • Messaging – SMS, MMS, threaded text messaging, Push Messaging service. • Multiple language support • Web browser - based on the open-source WebKit layout engine, coupled with Chrome's V8 JavaScript engine. • Java support – no Java Virtual Machine, Dalvik executables and run on Dalvik Page 49 Fall 2013 CS 495/595 - App Development for Smart Devices Features and Specifications II • Media support - audio/video/still media formats: WebM, H.263, H.264, MPEG-4 SP, WAV, JPEG, PNG, GIF, BMP, etc. • Streaming media support - RTP/RTSP streaming (3GPP PSS, ISMA), HTML5
Source Exif Data:
File Type : PDF File Type Extension : pdf MIME Type : application/pdf Linearized : No Page Count : 81 PDF Version : 1.4 Author : Tamer Nadeem Producer : Mac OS X 10.8.4 Quartz PDFContext Creator : PowerPoint Create Date : 2013:08:26 22:31:01Z Modify Date : 2013:08:26 22:31:01ZEXIF Metadata provided by EXIF.tools