Credits
3
Types
Elective
Requirements
This subject has not requirements
, but it has got previous capacities
Department
CS
The purpose of this course is to introduce students to programming some of those actual mobile devices for designing and managing applications of social and professional interest, and also to introduce them to programming the integration and interaction of the devices among themselves, as well as with people.
Teachers
Person in charge
- Pere Pau Vázquez Alcocer ( ppau@cs.upc.edu )
Weekly hours
Theory
2
Problems
0
Laboratory
2
Guided learning
0.5
Autonomous learning
6
Objectives
Contents
-
Introduction and environment configuration
Introduction of the course and detailed description of the application to be developped as practical weekly exercise. Configuration of the (hardware and software) working environment and programming environment. First exercises with Android and design of the initial menus and components of the application. Installation on the devices. -
Content providers and storage
Introduced some different content providers (media files, calendar, etc.) and explains how to access it. Storing options and its use are introduced. -
Menus and Databases
Using menus (option menus, text menus, etc.) and databases within Android applications. Introduction to SQLite.
Design and programming of a part of the practical application related with this topic. -
Threads and Intents
Students are introduced to the need to use threads (the smallest sequence of programmed instructions that can be managed independently by an operating system scheduler) in mobile applications and how to program them using the class Thread from Java and the handler classes from Android.
Also in this session, we introduce the Intents and learn how to apply them to handle basic phone features such as calls and SMSs messages. An intent is an abstract description of an operation to be performed, that provides a facility for performing late runtime binding between the code in different applications.
Design and programming of a part of the practical application related with this topic. -
Location and mapping
Geographical location and mapping on Android using the mobile devices' GPS (Global Positioning System) along with the Mapview and Google Maps tools. Simulation of geographic positioning and movement of devices using DDMS (Dalvik Debug Monitor Server).
Design and programming of a part of the practical application related with this topic. -
Introduction to 2D and 3D graphics on Android devices
Design methods of graphical 2D and 3D applications are introduced. This includes the definition of primitives such as animation.
Activities
Activity Evaluation act
Theory
0h
Problems
0h
Laboratory
21h
Guided learning
4.3h
Autonomous learning
11h
App presentation
Week: 17
Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h
Teaching methodology
The course is organized laboratory sessions. These sessions are entirely practical. The goal is to learn to program phones and other mobile devices with Android as it develops a real application. Every week of the year is dedicated to the development of a theme and the corresponding component of the application.Each session is organized as follows: During the first 30-60 minutes of teaching, the teacher will perform a short introduction to the subject and the rest is dedicated to implement exercises. In some cases, the explanation will be a little longer.
Some days will be asked presenting exercises as individuals or groups.
The idea is that there is discussion and comments on these presentations.
Evaluation methodology
We evaluate two factors:1. Participation in class:
- Weekly work 50%. Evaluated with the delivery of one or more small works, or partial delivery of the project, and taking into account attendance.
2. Final project that extends the contents of the weekly exercises: 50%
Bibliography
Basic
-
Professional Android
- Meier, R,
John Wiley & Sons,
2018.
ISBN: 9781118949528
http://cataleg.upc.edu/record=b1509844~S1*cat -
Android recipes: a problem-solution approach
- Smith, D.; Hellman, E,
Apress,
2016.
ISBN: 9781484222584
http://cataleg.upc.edu/record=b1509845~S1*cat -
Android developer website
- ,
2021.
http://developer.android.com -
Google Developers Training Course
- Google,
2018.
https://developers.google.com/training/android/ -
Android 7: principios del desarrollo de aplicaciones Java
- Benbourahla, N.; Piqueres Juan, F.J.; Oncins Rodríguez, A,
Ediciones ENI,
2017.
ISBN: 9782409009433
http://cataleg.upc.edu/record=b1496118~S1*cat
Complementary
-
Android developer course
- Udacity,
https://eu.udacity.com/course/android-developer-nanodegree-by-google--nd801