COMP 446 / ELEC 446

rangaleclickΛογισμικό & κατασκευή λογ/κού

4 Νοε 2013 (πριν από 3 χρόνια και 7 μήνες)

83 εμφανίσεις

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

cutler@rice.edu

10/27/10

Today’s Agenda


Events of the week


Announcements / Infrastructure Updates


ELEC / COMP 694


Android


Next Week


Feature Test App due by 11/03/2010
(Assignment 9)

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

2

Events of the Week


What
WiFi

Direct is and is not



FCC crunches numbers on spectrum crisis


Electronic Arts to acquire Angry Birds publisher



Goodbye Walkman, thanks for the iPod



Some networks blocking shows on Google TV


Meet the HP Slate 500



Amazon wins fight to keep customer records private


Hybrid hard
-
disk market set to take off



Apple, Google, Microsoft Job Applicants Tell All


First
Windows Phone 7 reviews



Android Market tops 100,000 applications


AT&T
activates 5.2 million iPhones in 3rd quarter



iPhone
passcode lock bypass vulnerability (again
)


Spotted: White iPhone 4 listed in Apple Store app
update

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

3

Current Roster


Julia
Botev


COMP, SR,
McMurtry

Julia.K.Botev@rice.edu


Eric Cheng


COMP, GR
eric.cheng@rice.edu


Jesus Cortez


COMP, JR, Jones
JesusCortez@rice.edu


Graham De Wit


ELEC, SR,
Wiess

graham.dewit@rice.edu


Ashley Herron


ELEC, SR, Martel
Ashley.N.Herron@rice.edu


Vic Hu


ELEC, SR,
Wiess

mrwho@rice.edu


Marcos Hung


BIOE, GR
Marcos.G.Hung@rice.edu


SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

4

Current Roster (2)


Jin Kim


COMP, GR
Kyujin.Kim@rice.edu


Kevin Lin


COMP, SO,
McMurtry

Kevin.S.Lin@rice.edu


Robyn
Moscowitz


COMP, JR,
McMurtry

Robyn.A.Moscowitz@rice.edu


Josh
Rykowski


COMP, GR
Joshua.Rykowski@rice.edu


Ivan Van


COMP, SR, Will Rice,
i.van@rice.edu


Jeff Yeh


ELEC, SR,
Hanszen

jeff.yeh@rice.edu


Aron Yu


ELEC, SR,
Hanszen

Aron.Yu@rice.edu


SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

5

Current Roster (3)


Michael Lo


ELEC, GR
mlo@rice.edu


Elliot Ng


ELEC, GR
elliottng@rice.edu


Rick Manning


COMP, SR, Jones
rick.manning@rice.edu


Henry Zhang


ELEC, SR, Jones
qz1@rice.edu


Jason Xu


ELEC, SR, Brown
jax1@rice.edu


Catherine Elder


ELEC, SR,
Hanszen

cje1@rice.edu


Sid Byrd


Staff
sidb@rice.edu


Xiang ‘Jash’ Guo


ELEC, GR
xg1@rice.edu



SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

6

ELEC / COMP 694


Spring 2011

Future Personal Computing Technology


How
to be a Chief Technology Officer


Wednesdays 9:30


11:00
, 3CR



Each student gets to pick a personal computing technology topic
which they will learn over a 5 or 6 week period


Weekly one
-
on
-
one meetings to rapidly learn topic


Session with presentation expert


Student presents topic to the class


Course gets very high ratings based on unique approach and current
topics
.


Desired class size of 10. Hard limit of 11.

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

7

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/10


Creating
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

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

8

COMP 446 Syllabus


10/13/10

Final 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 /
iOS

4


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)

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

9

Final Project Teams


Augmented Reality
Geocaching


Rick Manning


Hey Rice! For Android


Jesus Cortez


Augmented Reality Minesweeper


Elliot Ng


Extreme Bop
-
It!


Jason Xu


MyGroup


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



SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

10

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

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

11

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

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

12

11/10/10 AAPL vs. GOOG vs. MSFT


Group discussion on fate of cellphone makers


4 Groups


picked by random number


Apple



iPhone / iPad /
iOS

anything


Google


Android


Microsoft


Windows Phone 7


HP/Palm, RIM, Nokia


Participate in 20 minute debate as to where
your
company will
be in 5 years


Have a few compelling reasons why you will
succeed and some rebuttal as to why you will fail.

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

13

11/10/10 Teams
(as randomly picked by prospective Rice student)


Apple


Julia Botev


Catherine Elder


Jin Kin


Rick Manning


Robyn
Moscowitz


Google


Jash Guo


Josh
Rykowski


Ivan Van


Jason Xu


Henry Zhang


Microsoft


Sid Byrd


Eric Cheng


Marcos Hung


Michael Lo


Jeff Yeh


Aron Yu


RIM/Palm/Nokia


Jesus Cortez


Graham De Witt


Ashley Herron


Vic Hu


Kevin Lin


Elliot Ng

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

14

Android

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

15

Scope of This Presentation


Overview of basic Android system


Not meant to teach you how to program for the Android


Much material as subjective as objective



Great resources at:



http://developer.android.com


Videos at
http://
developer.android.com/videos/index.html


CalPoly

course at
http://users.csc.calpoly.edu/~djanzen/courses/409W10/


Professional Android 2 Application Development


Reto

Meier, Amazon.com, ISBN 978
-
0
-
470
-
56552
-
0

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

16

Most Viable Competition to iPhone


Growth rates exceeding that of
iOS


Market Place surpassing 100,000 apps


Supported by all major carriers


Broad based competition


Quality products

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

17

Major Philosophies


Open Environment


Open App Store


Multiple Hardware Manufactures


Multiple Carriers


No licensing, distribution or development fees


No release approval process


SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

18

Major Modules


Hardware Reference Design


A Linux kernel (bios, memory
mgnt
, process control)


Open libraries for SQLite,
WebKit
, OpenGL,
etc


Dalvik

virtual machine to host Android apps


Application framework agnostically exposing services


User interface framework to host and launch apps


Base set of preinstalled apps


A Software Development Kit


An App Store (but since open, talk of multiple)


SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

19

Native Android Apps


E
-
mail client


SMS management App


PIM suite including calendar and contacts


WebKit

based web browser


Music player and picture gallery


A camera and video recording app


C
alculator


Alarm Clock

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

20

Common Bundled Apps


Android Market Client


Google Maps with turn by turn directions


Gmail client


Google Talk instant
-
messaging client


YouTube video player


Manufacture and carrier specific apps


HTC Sense UI


Motorola
MotoBlur


Samsung Fascinate / HTC Merge with Bing

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

21

Open Handset Alliance


Not Linux Phone Standards Forum


Over 50 technology companies


Hardware manufacturers


Carriers


Software developers



That said


Google is the 800 pound gorilla


Openness among strong players leading to
forked development would have issues

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

22

Unique Features


Expanded Google Maps


More universal background services


More extensive sharing of data between apps


Equal playing field between app types


Home Screen widgets, live folders / wallpaper

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

23

Development Framework (SDK)


Android API libraries


Development Tools


Eclipse plug
-
in


Java Development Kit


Emulators


Dalvik

Debugger


Android Virtual Device Manager and Emulator


Documentation and Sample Code


Online Support


http://developer.android.com


http://www.stackoverflow.com



SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

24

Android Software Stack


SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

25

Videos


SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

26

Videos

SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

27

Demo


SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

28

Week 11


Assignments


At this point, videos are optional but useful particularly if your final
project will utilize feature discussed in video


View CS193P Lecture 17.
Bonjour,
NSStream
,
GameKit



View CS193P Lecture 18.
Unit Testing; Fun with Objective
-
C; Localization




Assignment 9
: Advanced Feature
App


Application of your choice demonstrating a difficult feature of your application.



Classroom Technology: Windows Phone 7



SEC
-

10/27/10

COMP 446 / ELEC 446
-

Week 10

29