Department of Computer Science,
University of Miami
CSC330 - Android Programming
Description
- The Android programming environment and execution model
- User interfaces and dialogs
- Saving data, state, and preferences
- Media
- Databases
- Sensors
- Maps and geo-decoding
Learning Objectives
- Be able to install the Android Studio programming environment, and develop and deploy
applications.
- Understand the Android lifecycle, and use appropriate techniques to react to changes in
lifecycle state.
- Build user-interfaces using XML and programmatic techniques.
- Store and retrieve data in the various areas of an Android device.
- Write programs that access content providers, including audio and images.
- Use databases for long-term storage of bulk data.
- Use the sensors of an Android device to obtain information about the attitude and location
of the device.
- Write programs that interface with the Google maps API.
Preparation
CSC330 has the pre-requisites:
- An "A" grade in CSC220 or equivalent.
- Ownership of a laptop computer that is powerful enough to develop Android applications in
the Android Studio IDE.
Android apps can be developed in the Mac, Linux, and Windows environments.
- Have the latest version of Java and Android Studio installed on your laptop.
Instructor
Dr Geoff Sutcliffe.
Contact details are on the WWW at
http://www.cs.miami.edu/~geoff.
Teaching Assistant
Vraj Patel
|
Contact Hours
- Lectures: Section P - Tuesday, Thursday 11:00-12:15pm, in Ungar 305 and in
Zoom.
- Geoff's office hours.
- Students are encouraged to ask questions by email at all times.
- Vraj's office hours are 3 hours/week, to be chosen from ...
- Tuesdays from 12:15-1:45pm
- Wednesdays from 3:30-5:00pm
... in UB310T and in Zoom.
Students are required to read their email regularly, and to consult the subject WWW page regularly.
Resource materials
There's no required book, but a
useful zyBook is available;
enter zyBook code: MIAMICSC330SutcliffeFall2023.
Logistics
There will be a mixture of teaching and practical work.
Students must bring their laptop ready-to-go to every lecture.
I will work though example programs that are in the
Content section of
the web site; maybe you want to print them so you can scribble explanations of what the parts of
the code do.
Some of you already have experience with Android development (hey, some of you probably know some
things I don't!).
Everyone is welcome to contribute to the course - if you know how to do something in a better way
than me, or have a suggestion for a topic to cover, please let me know!
Assessment
40%
| Weekly mini-apps
|
20%
| Individual Android app I
|
20%
| Individual Android app II
|
20%
| Group Android app
|
In order to obtain a particular grade, you might be required to attain that grade in all items
of assessment.
Assignments will be placed on the web.
The submission requirements for each assignment will be given with each assignment.
Late submissions will not be accepted.
Extensions of the due date will be granted if supporting documentary evidence is supplied (e.g.,
a doctor's certificate).
Application for an extension must be made to the instructor before the due date (if possible).
Assessment items must be completed individually.
While general interaction between students is encouraged, plagiarism is a breach of the
Honor code.
The university requires faculty to report all instances of academic integrity violations:
Faculty must immediately report the suspected violation to the Department Chair (or
relevant administrator in the non-departmentalized schools) and complete the online Academic
Integrity Reporting Form. The Department Chair will immediately inform the Academic Dean for
Undergraduate Studies of the school.
See the
Students Rights and Responsibilities Handbook.
That really means ...
It is ok to talk to other students about general solution techniques for assignments, but it is
not ok to copy solutions in part or as a whole.
Plagiarism will result in a loss of marks and/or fingers for all guilty students involved.