wednesday 2 4 kh 105
Download
Skip this Video
Download Presentation
Wednesday 2-4, KH 105

Loading in 2 Seconds...

play fullscreen
1 / 36

Wednesday 2-4, KH 105 - PowerPoint PPT Presentation


  • 88 Views
  • Uploaded on

Wednesday 2-4, KH 105. COMP 446 / ELEC 446 Mobile Wireless Services Project. Scott Cutler Professor in the Practice of Computer Technology Department of Computer Science Department of Electrical and Computer Engineering [email protected] 10/20/10. Today’s Agenda. Events of the week

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Wednesday 2-4, KH 105' - darcie


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
wednesday 2 4 kh 105

Wednesday 2-4, KH 105

COMP 446 / ELEC 446

Mobile Wireless Services Project

Scott Cutler

Professor in the Practice of Computer Technology

Department of Computer Science

Department of Electrical and Computer Engineering

[email protected]

10/20/10

today s agenda
Today’s Agenda
  • Events of the week
  • Announcements / Infrastructure Updates
  • Final Projects
    • Approved projects by 10/19/2010
      • (Assignment 7 – Handled through Final Project page)
    • Detailed specification by 10/26/2010 (Assignment 8)
    • Your Advanced Feature App by 11/02/2010 (Assignment 9)
  • iPad / iOS 4
  • Next Week
    • Detailed specification due by 10/27/2010 (Assignment 8)

COMP 446 / ELEC 446 - Week 9

events of the week
Events of the Week
  • Microsoft, Facebook unveil deeper social search on Bing
  • Apple now third-largest PC seller in U.S.
  • Google posts strong Q3 financial results
  • Apple Awarded Patents for Multitouch, Text Censoring
  • Ray Ozzie hangs up his Chief Software Architect hat
  • Apple\'s Q4\'10 financials - All-time record revenue and earnings
  • HP debuts Palm Pre 2; room for four in the smartphone market?

COMP 446 / ELEC 446 - Week 9

current roster
Current Roster

COMP 446 / ELEC 446 - Week 9

current roster 2
Current Roster (2)

COMP 446 / ELEC 446 - Week 9

current roster 3
Current Roster (3)

COMP 446 / ELEC 446 - Week 9

comp 446 syllabus
COMP 446 Syllabus
  • 8/25/10 Introduction / What makes mobile apps special
    • Assignment: Load Visual Studio – Due 8/30/10, Access a Mac, Download CS193P materials
  • 9/1/10 Intro to Mac OS X and Cocoa Touch, Objective-C, Dev Tools, Using Objective-C, Foundation framework
    • Videos: Lecture 1. Introduction to Mac OS X, Cocoa Touch, Objective-C and Tools (January 5, 2010) Lecture 2. Objective-C and Foundation Framework (January 7, 2010)
    • Assignment: Hello Rice [1a] and WhatATool 1 [1b] (Due 9/7/10)
  • 9/8/10 Discussion of first applications
    • Videos: Lecture 3. Custom Classes, Object Lifecycle, Autorelease, Objective-C Properties (January 12, 2010)Lecture 4. Building an Application; Model, View, Controller; Nib Files; Controls and Target-Action (January 14, 2010) Lecture 4a Xcode, Finding Help, Debugging (January 15, 2010)
    • Assignment: WhatATool 2 [2a] and HelloPoly I [2b] (Due 9/14/10)
  • 9/15/10 ASP.Net with a little HTML
    • Videos: Lecture 5. Views, Drawing, and Animation (January 19, 2010) Lecture 6. Designing iPhone Applications, Model-View-Controller, View Controllers (January 21, 2010)
    • Assignment: HelloPoly II [3] (Due 9/21/10)
  • 9/22/10 iPhone (pseudo) Web Apps / Browser Capabilities
    • Videos: Lecture 7. Navigation & Tab Bar Controllers (January 26, 2010) Lecture 8. Scroll Views and Table Views (January 28, 2010)
    • Assignment: Time to catch up or move ahead.
  • 9/29/10 SQL 101
    • Videos: Lecture 9. Data in Your iPhone App (February 2, 2010)- Lecture 10. Performance (February 4, 2010)
    • Assignment: Paparazzi 1 (Due 10/5/10)
  • 10/6/10Creating and Consuming Web Services
    • Videos: Lecture 11. Text Input and Presenting Content Modally (February 9, 2010) Lecture 12. Web Views; Locations and Maps (February 11, 2010)
    • Assignment: Paparazzi 2a (Table View Portion) (Due 10/13/10) Create or join final project by 10/13/10

COMP 446 / ELEC 446 - Week 9

comp 446 syllabus1
COMP 446 Syllabus
  • 10/13/10Final Project discussion and Pairing
    • Videos:Lecture 13. Address Book: Putting People in Your App (February 16, 2010) Lecture 14. Touch Events & Multi-touch (February 18, 2010)Lecture 12a: Designing for the iPad (February 12, 2010)Assignment: Final Project Proposal and Paparazzi 2b (Both due 10/19/10 ) Note: Paparazzi 3 is now an extra credit assignment.
  • 10/20/10 iPad Development / iOS4
    • Videos: Lecture 15. iPhone Device APIs; Location, Accelerometer & Camera; Battery Life & Power Management (February 23, 2010) Lecture 16. Audio APIs, Video Playback, Settings (February 25, 2010)
    • Assignment: Final Project, Stage 1 (Due 10/26/10)
  • 10/27/10 Android
    • Videos: Lecture 17. Bonjour, NSStream, GameKit (March 2, 2010) Lecture 18. Unit Testing; Fun with Objective-C; Localization (March 4, 2010)
    • Assignment: Advanced Feature App or iPad Application (Due 11/02/10)
  • 11/3/10 Windows Phone 7, Final Project Prep
    • Videos: Lecture 19. OpenGL ES Basics (March 9, 2010)Lecture 20. From Student to Startup: Lessons from a CS193P Alumnus (March 11, 2010)
    • Assignment: Final Project, Stage 2 (Due 11/09/2010)
  • 11/10/10 iPhone v. Android v. Windows Phone 7 group discussion
    • Videos: Yelp Monocle (February 6, 2010) Evernote(February 19, 2010) Bump (February 26, 2010)
    • Assignment: Final Project, Stage 3 (Due 11/16/2010)
  • 11/17/10 Final Project Prep
    • Videos: Publishing on the App Store (March 5, 2010) LinkedIn: Important Life Lessons on CoreData & GameKit (March 12, 2010)
    • Assignment: Final Project (Due 12/01/2010)
  • 11/24/10 Thanksgiving – Continue Final Projects on your own
  • 12/1/10 Demonstrate Final Projects
  • 12/5/10 Class Offsite – Sunday (tentative)

COMP 446 / ELEC 446 - Week 9

memory management again
Memory Management (again)
  • Random Crashes?
    • Likely Culprit is over-releasing an object generating a reference to bad memory
  • Objects created with alloc/init, copy or new typically come with a retain count of 1.
    • You have to release them when finished
  • Objects created through ‘Convenience Methods’ come auto-released.
    • You need to retain them if you want them valid in the future.
    • You should NOT release an autoreleased object as it will take the retain count to 0 and dealloc while still in use.

COMP 446 / ELEC 446 - Week 9

paparazzi 2b and coredata
Paparazzi 2b and CoreData
  • Questions?
  • Universal FlickrFetcher
  • Dot syntax
  • Remember to save changes

COMP 446 / ELEC 446 - Week 9

addressing homework load
Addressing Homework Load
  • Register yourself to a final project by next class, 10/13 – big negative if you do not!
  • Break Paparazzi 2 into two assignments.
    • Implement Table Views by 10/12
    • Implement Core Data by 10/19
      • For next week, OK to use static arrays for photos and fake objectAtIndexPath routine
      • For CoreData Model, OK to use single entity although not as good as relational model and required for A+
  • Paparazzi 3 is optional assignment
    • Necessary but not sufficient for grade of A+

COMP 446 / ELEC 446 - Week 9

final projects
Final Projects
  • Everyone successfully associated with a final project
  • Need to ensure that each person is responsible for at least two smartphone advanced features – at least one of them significant
  • I need to know which features for which you will be responsible. It is a section of the full specification that is due before 10/27/10 class.

COMP 446 / ELEC 446 - Week 9

iphone advanced features
iPhone Advanced Features
  • Address Book
  • Bluetooth
  • Compass (3Gs)
  • Custom Animations
  • Gestures (Shake is a Gesture)
  • GPS
  • Integrated Email
  • Integrated Movie Camera (3Gs)
  • Image Picker
  • Integrated Still Camera
  • Integrated Web Browser
  • Internet
  • Microphone
  • OpenAL
  • OpenGL
  • Playing Movies
  • Proximity Sensor
  • Rotation sensor
  • Multitasking
  • Local Notifications
  • Core Motion
  • iAd
  • High-Resolution Screen
  • Game Center

COMP 446 / ELEC 446 - Week 9

final project teams
Final Project Teams
  • Augmented Reality Geocaching
    • Rick Manning
  • Hey Rice! For Android
    • Jesus Cortez
  • Augmented Reality Minesweeper
    • Elliot Ng
  • Extreme Bop-It!
    • Jason Xu
  • First Person Shooter-CDRL
    • Kevin Lin
  • Podman
    • Sid Byrd
  • Virtual Tour Guide – Rice Campus
    • Jin Kim, Jash Guo
  • My Personal Library
    • Ashley Herron, Henry Zhang
  • Photomap – Android
    • Eric Cheng, Michael Lo
  • FeetKeep/imolast
    • Vic Hu, Marcos Hung
  • Polytone!
    • Julia Botev, Robyn Moscowitz
  • OBDPhone
    • Graham De Witt, Josh Rykowski
  • Mahjong – iPhone
    • Catherine Elder, Ivan Van
  • Mahjong – iPad
    • Jeff Yeh, Aron Yu

COMP 446 / ELEC 446 - Week 9

final project timeline
Final Project Timeline
  • 10/13 Projects Identified, Teams Chosen
  • 10/20 Project proposals approved
  • 10/27 Detail Specification / User Manual
  • 11/3 Sample app demonstrating feature
  • 11/10 Status updates Apple / Google / Microsoft discussion
  • 11/17 Individual Team Reviews
  • 11/24 No or optional class – Thanksgiving
  • 12/1 Demonstrate working program
  • 12/8 (or class finals day) – submit code

COMP 446 / ELEC 446 - Week 9

detailed specification user manual
Detailed Specification / User Manual
  • Series of sample screen shots
    • Suggest creating in IB
    • Crude graphics OK
    • Photo manipulation OK
  • User Manual
    • Typical scenario walkthrough OR
    • Standard manual format documenting function of buttons and displays
  • Includes list of features and responsible person

COMP 446 / ELEC 446 - Week 9

slide17
iPad

COMP 446 / ELEC 446 - Week 9

slide18
iPad
  • Introduced new iOS form factor
  • Amazing response – 1.5m units / month
    • Devastating notebook PC sales
    • Created new PC category
    • Industry scrambling to compete
  • Came with iOS 3.2 which adds features appropriate to new form factor and in addition to 3.1 base of Winter 2010 CS193p class
  • http://developer.apple.com/library/ios/documentation/General/Conceptual/iPadProgrammingGuide/iPadProgrammingGuide.pdf

COMP 446 / ELEC 446 - Week 9

features new to ios 3 2
Features New to iOS 3.2
  • Split Views
  • Popovers
  • Modally presented controllers
  • Toolbar location
  • Custom input views (specialized keyboards)
  • Improved Gesture Recognizers
  • Greater support of external devices
  • Enhancements to how text is handled
  • Native PDF creation
  • File Associations
  • Drawing Shapes Using Bezier Paths
  • iPad Only

COMP 446 / ELEC 446 - Week 9

split views
Split Views

COMP 446 / ELEC 446 - Week 9

split view orientation
Split View Orientation

COMP 446 / ELEC 446 - Week 9

split view landscape
Split View Landscape

COMP 446 / ELEC 446 - Week 9

popovers
Popovers

COMP 446 / ELEC 446 - Week 9

modally presented controllers
Modally Presented Controllers

COMP 446 / ELEC 446 - Week 9

modally presented controllers1
Modally Presented Controllers

COMP 446 / ELEC 446 - Week 9

modally presented controllers2
Modally Presented Controllers

COMP 446 / ELEC 446 - Week 9

toolbar location
Toolbar Location

COMP 446 / ELEC 446 - Week 9

improved gesture recognizers
Improved Gesture Recognizers

COMP 446 / ELEC 446 - Week 9

greater support of external devices
Greater Support of External Devices
  • Support for external keyboard
  • Support for external display
    • 1280 x 720p (16:9)
    • 1024 x 768 (4:3)
  • Related: Videos can now play in other than full screen

COMP 446 / ELEC 446 - Week 9

text enhancements
Text Enhancements
  • The Core Text framework provides support for sophisticated text rendering and layout.
  • The UIKit framework includes several enhancements to support text, including:
    • New protocols that allow your own custom views to receive input from the system keyboard
    • A new UITextChecker class to manage spell checking
    • Support for adding custom commands to the editing menu that is managed by the UIMenuControllerclass
  • Core Animation now includes the CATextLayer class, which you can use to display text in a layer.
  • Custom Input Views and Input Accessory Views

COMP 446 / ELEC 446 - Week 9

native pdf
Native PDF
  • Natural extension to current drawing methods
  • Create a drawing context, but this time it is a PDF context.
  • Draw in context using normal UIKit and Core Graphics routines.
  • When you close the context, you have a PDF document.

COMP 446 / ELEC 446 - Week 9

file associations
File Associations
  • Useful to allow app to act as a receiver for a certain file type

COMP 446 / ELEC 446 - Week 9

drawing shapes using bezier paths
Drawing Shapes Using Bezier Paths

COMP 446 / ELEC 446 - Week 9

ios 4 x
iOS 4.x

COMP 446 / ELEC 446 - Week 9

three major releases
Three Major Releases

iOS 4.0 (iPhone)

  • Multitasking
  • Local notifications
  • Event Kit (Calendar)
  • Core Motion
  • Data Protection
  • Core Telephony
  • iAd
  • High-Res Screen
  • AV Foundation
  • Home Folders
  • iOS 3.2 for iPhone

iOS 4.1 (iPhone)

  • Game Center
  • Minor changes
  • Security changes

iOS 4.2 (iPhone/iPad)

  • Adds iPad to iOS 4
  • AirPrint
  • CoreMIDI

COMP 446 / ELEC 446 - Week 9

week 10
Week 10
  • Assignments
    • At this point, videos are optional but useful particularly if your final project will utilize feature discussed in video
      • View CS193P Lecture 15. iPhone Device APIs; Location, Accelerometer & Camera; Battery Life & Power Management
      • View CS193P Lecture 16. Audio APIs, Video Playback, Settings
    • Assignment 8: Final Project Specification (Due before 10/27/10 class)
  • Classroom Technology: Android

COMP 446 / ELEC 446 - Week 9

ad