1/5

Lecture Mobile Application Development (119310)

Content

The following list gives an overview (not complete) of the theory you will learn in this lecture and the practical assignments. The practical assignments will help you to really understand and establish your knowledge by hands on exercises. You can conduct them either in the Tuesday lectures or at home. But please do them, they are important and relevant for the exam!

2/5
Topics Slides
Introduction, lecture organisation, Cross-platform development basics Lecture Organisation, Cross-Platform-Development
General mobile app development toolchain overview, native build process, version control systems (short Git introduction), testing tools, collaboration tools, continous integration App-Development Toolchain
iOS introduction: system architecture, runtime environment, application life cycle, Xcode introduction iOS Introduction
Assignment: First iOS app iOS Assignment First App
Swift fundamentals: history, quick Objective-C overview, Swift basics iOS Swift Fundamentals
Assignment: Swift Swift Assignment
iOS framework basics part 1: Framework Layers, App components, Interface Builder / Storyboards, AppDelegate, UIViewController, CoreData iOS Framework Basics Part 1
iOS Assignment: Storyboards, View Controller Storyboards Assignment, ViewController Assignment
iOS framework basics part 2: Properties & Protocols, UIKit: UITableViewController iOS Framework Basics Part 2
iOS Assignment: Properties, Protocols, UITableView Properties Assignment, Protocol Assignment, UITableView Assignment
3/5
Topics Slides
iOS framework basics part 3: More UIKit: UIWebView, AV Foundation Framework Basics Part 3
iOS Assignment: Artist Explorer iOS Artist Explorer Assignment
iOS framework basics part 4: AutoLayout (Constraints, Size Classes, Stack Views, etc.) Framework Basics Part 4
iOS Assignment: Autolayout Autolayout Assignment
iOS framework basics part 5: Persistence (NSUserDefaults, Property Lists, Core Data) Framework Basics Part 5
Introduction to Android: System architecture, Android SDK basics, Android Studio introduction, ADM, ADB, Android Manifest, Android UI basics (layouts, resources, etc.) Android Intro
Android Application Framework basics: Android component types overview, Activity, Application Context, Intent, WebView, Permissions, Excursus to Support Libraries, Android Security and UI reaction times Android Framework Basics
Android assignments: First Android App, Using Activities & Intents Android Assignment First App, Android Assignment Using Intents
Android Application Framework Part 2: Implementing list views, filling lists with content using a Content Provider (MediaStore) Android Lists and Content Provider
4/5
Topics Slides
Android assignment: WebViews and ListViews Android Assignment Using WebViews Android Assignment on ListViews
Android Application Framework Part 2: Advanced Lists with RecyclerView Android RecyclerView
Android assignment: RecyclerView Android Assignment on RecyclerView
Android Application Framework Part 3: Service & Broadcast Receiver Android Service and Broadcast Receiver
Android Assignment: Service, BroadCast Receiver Android Assignment on Service Android Assignment on BroadcastReceiver
Android Application Framework Part 4: Fragments Android Fragments
Assignment: Fragments Android Assignment Fragment
Android Application Framework Part 5: Async Programming Android AsyncTask
Assignment: Async Task & Artist Explorer Android Assignment AsyncTask, Android Assignment Artist Explorer
Android features for storing data Android Data Storage
Assignment: Using Data Storage Android Assignment on Data Storage
Bonus Assignment: Implementing a Twitter-like client app Android Assignment on implementing a Twitter-like client app
5/5

Notice

No liability assumed. As Android and iOS frameworks, programming languages (e.g. Swift) and development environments evolve very quickly, the lecture slides and assigments have to be constantly updated. Thus it is not always possible to provide lecture slides in advance to the planned lecture. Please bear with me, apologies for any inconvenience.

This lecture is limited to 32 participants, due to the available number of workstations (MacMinis) and room size. We apologize for any inconvenience.

Now we will go to Tobias Schneider (room 151) to get MacBooks for those who do not have any macOS system.