Mobile and Social Application Programming
Computer Science and Electronic Engineering (School of)
Postgraduate: Level 7
Monday 13 January 2020
Friday 20 March 2020
08 May 2019
Requisites for this module
MSC G40012 Advanced Computer Science,
MSC G61012 Computer Games,
MSCIG402 Computer Science,
MSCII100 Computer Science (Integrated Masters, Including Placement Year)
A huge industry has grown up in the last few years delivering a wide range of apps for mobile devices, including application areas such as games, social networking, information, and productivity. Given the power of modern mobile devices coupled with their range of inputs (audio, camera, GPS, motion sensor, touchscreen) this creates an exceptionally interesting platform to develop applications for. Furthermore, these platforms come complete with their own marketplaces meaning that successful applications can achieve a large market share based largely on their merit.
The purpose of this module is to teach the main aspects of programming applications for such devices. Such a course could be taught at an abstract level, independent of the particular type of device in question, but the approach taken on this module is to explore one particular platform (Android), in a hands-on and in-depth manner. This is a popular platform with a range of excellent devices (including low cost ones) from a variety of manufacturers. The platform is well designed and well documented, and has the significant advantage of being Java based, meaning that students can get up to speed relatively quickly and concentrate on the interesting issues involved in developing a high quality app without having to learn a new language at the same time.
The aim of this module is to teach the main aspects of programming applications for mobile devices.
On successful completion of the course students should be able to:
1. Demonstrate an understanding of the business models behind mobile and social applications and the issues involved in publishing an app for a mobile platform
2. Demonstrate an ability to use the main elements of the Android API
3. Implement mobile applications that connect with social networking sites
4. Utilise appropriate date persistence mechanisms
5. Design and implement a non-trivial Android app
HelloAndroid: Android SDK, using an IDE, Application Structure, XML descriptors, Intents, Activities, Fragments, Tasks. Resources and context, components and lifecycles, packaging an Android app, porting apps to Android.
GUI Building: main elements of Android GUIs and interactions between the GUI and the application.
Graphics: writing interactive graphics applications with fast and smooth animation for applications such as games.
Handling and persisting data: SQLite, JSON, binary serialization, XML serialization.
Developing and exploring content providers: defining a public content provider API, implementing a content provider, content observation, declaring a content provider. Using and exploring an existing content provider. Integrating with social networking sites.
Rich applications: multimedia, handling audio and video. Location-based applications, GPS, integration with mapping services such as Google maps. Utilising sensor inputs: audio, camera, gesture, motion (tilt, accelerometer).
Google Play Store: deploying an app to the market, maintaining and updating an app, utilising feedback from users. Charging for apps. Using advertisement APIs. Internationalisation.
This module does not appear to have any essential texts. To see non-essential items, please refer to the module's reading list.
Assessment items, weightings and deadlines
|Coursework / exam
||Progress Test - week 20
Module supervisor and teaching staff
Dr Michael Sanderson, email: email@example.com.
Dr Dimitri Ognibene
CSEE School Office, email: csee-schooloffice (non-Essex users should add @essex.ac.uk to create full e-mail address), Telephone 01206 872770
Dr Robert Mark Stevenson
University of Sheffield
Available via Moodle
Of 31 hours, 0 (0%) hours available to students:
31 hours not recorded due to service coverage or fault;
0 hours not recorded due to opt-out by lecturer(s).
Disclaimer: The University makes every effort to ensure that this information on its Module Directory is accurate and up-to-date. Exceptionally it can
be necessary to make changes, for example to programmes, modules, facilities or fees. Examples of such reasons might include a change of law or regulatory requirements,
industrial action, lack of demand, departure of key personnel, change in government policy, or withdrawal/reduction of funding. Changes to modules may for example consist
of variations to the content and method of delivery or assessment of modules and other services, to discontinue modules and other services and to merge or combine modules.
The University will endeavour to keep such changes to a minimum, and will also keep students informed appropriately by updating our programme specifications and module directory.
The full Procedures, Rules and Regulations of the University governing how it operates are set out in the Charter, Statutes and Ordinances and in the University Regulations, Policy and Procedures.